<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>我的教育技术 &#187; .net</title>
	<atom:link href="http://myet.info/archives/tag/net/feed" rel="self" type="application/rss+xml" />
	<link>http://myet.info</link>
	<description>My Educational Technology</description>
	<lastBuildDate>Fri, 03 Sep 2010 03:18:05 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>SQL Server 2005数据库创建、修改、删除命令小结</title>
		<link>http://myet.info/archives/567.html</link>
		<comments>http://myet.info/archives/567.html#comments</comments>
		<pubDate>Mon, 08 Dec 2008 07:09:08 +0000</pubDate>
		<dc:creator>andu</dc:creator>
				<category><![CDATA[技术]]></category>
		<category><![CDATA[摘抄]]></category>
		<category><![CDATA[.net]]></category>
		<category><![CDATA[c#]]></category>
		<category><![CDATA[学习]]></category>
		<category><![CDATA[思索]]></category>
		<category><![CDATA[知道]]></category>

		<guid isPermaLink="false">http://myet.info/?p=567</guid>
		<description><![CDATA[最近在系里面借了本有关数据库的书，书名是《SQL Server 2005 中文版&#8211;关系数据库基础与实践教程》（电子工业出版社），对于像我这样对SQL数据库零基础，对access数据库也不熟悉的人来说，是一本很好的书。下面是对SQL数据库命令的小结，都是用代码来创建（create、add file）、修改（modify、alter）、删除（remove、drop）数据库和数据库表的命令。 创建数据库 create database 产品销售 使用这个命令创建数据库后，系统会默认创建文件名为产品销售.mdf 和产品销售_log.LDF两个数据库文件的，默认的存储路径是： c:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DATA，其他设置为：  逻辑名称     文件类型 文件组      初始大小(MB)     自动增长  产品销售     数据     PRIMARY     3             增量为 1 MB，不限制增长  产品销售_log日志    不适用        1                    增量为 10％， 创建数据库，并指定数据库文件位置 create database 产品销售 on ( name= cpxs_data, filename=&#8217;e:\cpxs_data.mdf&#8217;, size=4, maxsize=10, filegrowth=10% ) log on ( name=cpxs_log, filename=&#8217;e:\cpxs_log.mdf&#8217;, size=1, maxsize=6, filegrowth=1 [...]]]></description>
			<content:encoded><![CDATA[<p>最近在系里面借了本有关数据库的书，书名是《SQL Server 2005 中文版&#8211;关系数据库基础与实践教程》（电子<a href="http://myet.info/wordpress/wp-content/uploads/2008/12/7121025442.jpg"><img class="alignright size-medium wp-image-569" title="SQL Server 2005 中文版--关系数据库基础与实践教程" src="http://myet.info/wordpress/wp-content/uploads/2008/12/7121025442-215x300.jpg" alt="" width="215" height="300" /></a>工业出版社），对于像我这样对SQL数据库零基础，对access数据库也不熟悉的人来说，是一本很好的书。下面是对SQL数据库命令的小结，都是用代码来创建（create、add file）、修改（modify、alter）、删除（remove、drop）数据库和数据库表的命令。</p>
<p>创建数据库</p>
<blockquote><p>create database 产品销售</p></blockquote>
<p>使用这个命令创建数据库后，系统会默认创建文件名为<strong>产品销售.mdf</strong><br />
和<strong>产品销售_log.LDF</strong>两个数据库文件的，默认的存储路径是： c:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DATA，其他设置为：</p>
<p> 逻辑名称     文件类型 文件组      初始大小(MB)     自动增长<br />
 产品销售     数据     PRIMARY     3             增量为 1 MB，不限制增长<br />
 产品销售_log日志    不适用        1                    增量为 10％，</p>
<p>创建数据库，并指定数据库文件位置<span id="more-567"></span></p>
<blockquote><p>create database 产品销售<br />
on<br />
(<br />
name= cpxs_data,<br />
filename=&#8217;e:\cpxs_data.mdf&#8217;,<br />
size=4,<br />
maxsize=10,<br />
filegrowth=10%<br />
)<br />
log on<br />
(<br />
name=cpxs_log,<br />
filename=&#8217;e:\cpxs_log.mdf&#8217;,<br />
size=1,<br />
maxsize=6,<br />
filegrowth=1<br />
)</p></blockquote>
<p>这样创建出来的数据库在visual studio 2005或者在Microsoft SQL Server Management Studio 中呈现的数据<a href="http://myet.info/wordpress/wp-content/uploads/2008/12/o_sql2005.jpg"><img class="alignright size-medium wp-image-570" title="sql server 2005" src="http://myet.info/wordpress/wp-content/uploads/2008/12/o_sql2005-248x300.jpg" alt="" width="248" height="300" /></a>库名字就是中文名：<strong>产品销售</strong>，而实际的数据库名是cpxs_data.mdf，日志数据库名是cpxs_log.mdf。上面有许多关键字，下面是它们的含义。</p>
<blockquote><p>name：逻辑文件名，修改数据库文件时要利用它指定要修改的数据库文件。</p>
<p>filename：数据库文件要保存的路径及文件名。<br />
size：初始数据库文件的大小，以兆（M）为单位。<br />
maxsize：数据库文件的最大值。<br />
filegrowth：数据库文件的自动增长率，可以是百分比，具体的数值也是以兆（M）为单位。</p></blockquote>
<p>注意，SQL语句不区分大小写，每一项的分隔符是逗号，并且最后一项没有逗号。按F5键执行代码。</p>
<p>增加数据文件</p>
<blockquote><p>alter database 产品销售<br />
add file<br />
(<br />
name= cpxs_data2,<br />
filename=&#8217;e:\cpxs_data2.mdf&#8217;,<br />
size=4,<br />
maxsize=10,<br />
filegrowth=10%<br />
)</p></blockquote>
<p>这样就在数据库<strong>产品销售</strong>中增加了一个名为cpxs_data2.mdf的数据文件了，到目前为止，数据库<strong>产品销售</strong>就有3个数据文件了。</p>
<p>上面的命令当中，alter database是用来取得权限，然后再用add file命令来增加数据文件的。</p>
<p>增加日志文件</p>
<blockquote><p>alter database 产品销售<br />
add log file<br />
( &#8230; )</p></blockquote>
<p>与增加数据文件不同的是加了一个log关键字来区分。</p>
<p>修改数据库文件</p>
<blockquote><p>alter database 产品销售<br />
modify file<br />
(<br />
name=cpxs_data.mdf,<br />
size=3,<br />
maxsize=5<br />
)</p></blockquote>
<p>修改数据库文件前，也要先获得权限，然后使用 modify file 命令，在内部首先要指定数据文件的名字，即给 name 关键字赋值，可以修改数据文件的属性有大小（size），最大值（maxsize），增长率（filegrowth）等。修改日志文件的命令与之相同。</p>
<p>删除数据库文件</p>
<blockquote><p>alter database 产品销售<br />
remove file cpxs_data</p></blockquote>
<p>删除数据库文件前，先获得权限（alter database 产品销售），然后删除（remove file ）指定文件（cpxs_data），指定的数据库文件不带后缀名（.mdf），这个名字只删除了数据库产品销售下面的一个数据文件，剩下还有两个数据文件依然存在。</p>
<p>删除数据库</p>
<blockquote><p>drop database 产品销售</p></blockquote>
<p>用删除数据库命令（drop database ）将会把数据库产品销售所属的全部数据库文件都删除掉了，用这个命令，就把刚才剩余的两个数据库文件cpxs_data.mdf和cpxs_log.mdf删除掉了，并且在数据库管理界面，也没有产品销售这个数据库列表项。</p>
<p>代码创建数据库表</p>
<blockquote><p>create database 产品销售<br />
use 产品销售<br />
create table 仓库<br />
（<br />
仓库编号 int,<br />
仓库号 varchar(50),<br />
城市    varchar(50),<br />
面积   int<br />
)</p></blockquote>
<p>向表中插入记录</p>
<blockquote><p>use 产品销售<br />
insert into 仓库（仓库编号,仓库号，城市，面积）values（1，&#8217;wh1&#8242;，&#8217;上海&#8217;，600）</p></blockquote>
<p>创建还有自动编号、主键、默认值、check约束字段的数据表</p>
<blockquote><p>use 产品销售<br />
create table 仓库2<br />
（<br />
仓库编号 int <strong>identity（1，1） primary key</strong>，<br />
仓库编号 varchar(50) unique,<br />
城市  varchar(50)<strong> default</strong> &#8216;青岛&#8217;<br />
面积 int<strong> check</strong>(面积&gt;=300 and 面积&lt;=1800）<br />
）</p></blockquote>
<p>代码创建还有外键关联、计算字段的数据库表</p>
<blockquote><p> use 产品销售<br />
create table 工资表<br />
（<br />
职工编号 int identity(1,1) primary key,<br />
职工号 varchar(50) unique,<br />
仓库号 varchar(50)  <strong>references</strong> 仓库（仓库号）,<br />
基本工资 int check(基本工资&gt;=800 and 基本工资&lt;=2100),<br />
加班工资 int，<br />
奖金 int,<br />
扣率 int,<br />
应发工资 <strong>as</strong> (基本工资+加班工资+奖金-扣率）<br />
） </p></blockquote>
<p>增加数据库表字段</p>
<blockquote><p>use 产品销售<br />
alter table 职工<br />
add 电子邮件 varchar(50) default <a href="mailto:'12345@qq.com'">&#8217;12345@qq.com&#8217;</a></p></blockquote>
<p>修改数据库表字段</p>
<blockquote><p>use 产品销售<br />
alter table 职工<br />
alter column 电子邮件</p></blockquote>
<p>删除数据库表字段</p>
<blockquote><p>use 产品销售<br />
alter table 职工<br />
drop column 电子邮件</p></blockquote>

	标签：<a href="http://myet.info/archives/tag/net" title=".net" rel="tag nofollow">.net</a>, <a href="http://myet.info/archives/tag/c" title="c#" rel="tag nofollow">c#</a>, <a href="http://myet.info/archives/tag/%e5%ad%a6%e4%b9%a0" title="学习" rel="tag nofollow">学习</a>, <a href="http://myet.info/archives/tag/%e6%80%9d%e7%b4%a2" title="思索" rel="tag nofollow">思索</a>, <a href="http://myet.info/archives/tag/%e6%8a%80%e6%9c%af" title="技术" rel="tag nofollow">技术</a>, <a href="http://myet.info/archives/tag/%e7%9f%a5%e9%81%93" title="知道" rel="tag nofollow">知道</a><br />

	<br/><h4>相关日志-博文</h4>
	<ul class="st-related-posts">
	<li><a href="http://myet.info/archives/416.html" title="我是一个懦夫 (2008年十一月月2日)">我是一个懦夫</a> (10)</li>
	<li><a href="http://myet.info/archives/604.html" title="元旦（圣诞）QQ群搞笑信息荟萃 (2008年十二月月24日)">元旦（圣诞）QQ群搞笑信息荟萃</a> (0)</li>
	<li><a href="http://myet.info/archives/24.html" title="找到学习的最佳时段 (2008年九月月23日)">找到学习的最佳时段</a> (0)</li>
	<li><a href="http://myet.info/archives/762.html" title="使用dotnetnuke的初体验 (2009年六月月9日)">使用dotnetnuke的初体验</a> (0)</li>
	<li><a href="http://myet.info/archives/730.html" title=".net 3.5 程序安装错误记录 (2009年五月月10日)">.net 3.5 程序安装错误记录</a> (0)</li>
</ul>

]]></content:encoded>
			<wfw:commentRss>http://myet.info/archives/567.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>asp.net中access(.mdb)和MSSql(.mdf)数据库的相对路径设置</title>
		<link>http://myet.info/archives/532.html</link>
		<comments>http://myet.info/archives/532.html#comments</comments>
		<pubDate>Thu, 27 Nov 2008 01:51:46 +0000</pubDate>
		<dc:creator>andu</dc:creator>
				<category><![CDATA[技术]]></category>
		<category><![CDATA[摘抄]]></category>
		<category><![CDATA[.net]]></category>
		<category><![CDATA[c#]]></category>
		<category><![CDATA[学习]]></category>
		<category><![CDATA[能力]]></category>

		<guid isPermaLink="false">http://myet.info/?p=532</guid>
		<description><![CDATA[最近在学习visual studio 2005的C#和数据库的知识时，对读取数据库的路径来说，怎么设置相对路径，而不是用绝对路径比较困扰。不管是access（*.mdb)数据库还是mssql(*.mdf)，在部署也就是换到别的电脑或服务器时，一般都要使用相对路径，而且调取绝对路径不仅麻烦，还不安全。使用相对路径是最佳办法。 我们的数据库一般都是放在App_Data这个默认的数据库文件夹下，我在网络搜索相对路径时，一般都是对access数据库来说的解决办法。下面是碧血黄沙对access数据库的相对路径的原创解决办法： 第一步：在配置文件web.config把&#60;appSettings&#62;的内容改写为 &#60;appSettings&#62; &#60;add key=&#8221;SQLConnString&#8221; value=&#8221;provider=microsoft.jet.oledb.4.0;data source=&#8221;/&#62; &#60;add key=&#8221;dbPath&#8221; value=&#8221;~/App_Data/mydata.mdb&#8221;/&#62; &#60;/appSettings&#62; 第二部：在读取数据库web页面上（或Form里）的设置全局变量 public static readonly string CONN_STRING_NON_DTC = System.Configuration.ConfigurationManager.AppSettings["SQLConnString"].ToString() + System.Web.HttpContext.Current.Server.MapPath(ConfigurationManager.AppSettings["dbPath"]) + &#8220;;&#8221;; 碧血黄沙把CONN_STRING_NON_DTC定义成static readonly是为了使用方便。 以上对access数据库的设置方法。而我要读取的是mssql数据库。其实修改起来也是比较简单的，下面是我修改后可以正确使用的，是在上面的基础上稍作修改，其实都是对App_Data这个数据库文件夹相对路径的设置或是读取的问题。 web.config配置文件里面对读取App_Data文件夹相对路径有用的只有，注意使用自己命名的数据库及后缀名 &#60;add key=&#8221;dfPath&#8221; value=&#8221;~/App_Data/mydata.mdf&#8220;/&#62; 这句，在具体读取页面里，可以这样设置链接字符串： //设置数据库连接字符串  string CONN_STRING_NON_DTC = System.Web.HttpContext.Current.Server.MapPath(ConfigurationManager.AppSettings["dfPath"]) ; string myConnStr = @&#8221;Data Source=.\SQLEXPRESS;AttachDbFilename=&#8221; + CONN_STRING_NON_DTC + &#8220;;Integrated Security=True;User Instance=True&#8221;; //设置sql数据库语句读取命令 SqlConnection myConn = [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://myet.info/wordpress/wp-content/uploads/2008/11/11070521.jpg"><img class="alignright size-medium wp-image-534" title="路径" src="http://myet.info/wordpress/wp-content/uploads/2008/11/11070521-300x206.jpg" alt="" width="300" height="206" /></a>最近在学习visual studio 2005的C#和数据库的知识时，对读取数据库的路径来说，怎么设置相对路径，而不是用绝对路径比较困扰。不管是access（*.mdb)数据库还是mssql(*.mdf)，在部署也就是换到别的电脑或服务器时，一般都要使用相对路径，而且调取绝对路径不仅麻烦，还不安全。使用相对路径是最佳办法。</p>
<p>我们的数据库一般都是放在App_Data这个默认的数据库文件夹下，我在网络搜索<a href="http://www.google.cn/search?hl=zh-CN&amp;newwindow=1&amp;client=aff-cs-maxthon&amp;hs=ZV&amp;q=App_Data+%E7%9B%B8%E5%AF%B9%E8%B7%AF%E5%BE%84&amp;meta=&amp;aq=f&amp;oq=" target="_blank">相对路径</a>时，一般都是对access数据库来说的解决办法。下面是碧血黄沙对access数据库的相对路径的原创解决办法：</p>
<blockquote><p>第一步：在配置文件web.config把&lt;appSettings&gt;的内容改写为</p>
<p>&lt;appSettings&gt;<br />
&lt;add key=&#8221;SQLConnString&#8221; value=&#8221;provider=microsoft.jet.oledb.4.0;data source=&#8221;/&gt;<br />
&lt;add key=&#8221;dbPath&#8221; value=&#8221;~/App_Data/mydata.mdb&#8221;/&gt;<br />
&lt;/appSettings&gt;<span id="more-532"></span></p>
<p>第二部：在读取数据库web页面上（或Form里）的设置全局变量</p>
<p>public static readonly string CONN_STRING_NON_DTC = System.Configuration.ConfigurationManager.AppSettings["SQLConnString"].ToString() + System.Web.HttpContext.Current.Server.MapPath(ConfigurationManager.AppSettings["dbPath"]) + &#8220;;&#8221;;</p></blockquote>
<p><a href="http://www.cnblogs.com/wjj/archive/2006/11/22/568265.html" target="_blank">碧血黄沙</a>把CONN_STRING_NON_DTC定义成static readonly是为了使用方便。</p>
<p>以上对access数据库的设置方法。而我要读取的是mssql数据库。其实修改起来也是比较简单的，下面是我修改后可以正确使用的，是在上面的基础上稍作修改，其实都是对App_Data这个数据库文件夹相对路径的设置或是读取的问题。</p>
<p>web.config配置文件里面对读取App_Data文件夹相对路径有用的只有，注意使用自己命名的数据库及后缀名</p>
<blockquote><p>&lt;add key=&#8221;d<span style="color: #ff0000;">f</span>Path&#8221; value=&#8221;~/App_Data/mydata.md<span style="color: #ff0000;">f</span>&#8220;/&gt;</p></blockquote>
<p>这句，在具体读取页面里，可以这样设置链接字符串：</p>
<blockquote><p>//设置数据库连接字符串 </p>
<p>string CONN_STRING_NON_DTC = System.Web.HttpContext.Current.Server.MapPath(ConfigurationManager.AppSettings["dfPath"]) ;</p>
<p>string myConnStr = @&#8221;Data Source=.\SQLEXPRESS;AttachDbFilename=&#8221; + CONN_STRING_NON_DTC + &#8220;;Integrated Security=True;User Instance=True&#8221;;</p>
<p>//设置sql数据库语句读取命令</p>
<p>SqlConnection myConn = new SqlConnection(myConnStr);</p>
<p>string sql = &#8220;select * from 库存零件表 where 零件编号 like &#8216;%&#8221; + this.lingjbh.Text + &#8220;%&#8217;and &#8221; + &#8220;零件名称 like &#8216;%&#8221; + this.lingjmc.Text + &#8220;%&#8217;&#8221;;</p>
<p>SqlCommand myComm = new SqlCommand(sql, myConn);</p>
<p>myConn.Open();</p>
<p>SqlDataReader myReader = myComm.ExecuteReader();</p>
<p>//数据库中数据已经读取出来，现在把它显示出来</p>
<p>//返回查询结果的变量<br />
        DataTable dt = new DataTable();<br />
        dt.Columns.Add(new DataColumn(&#8220;零件编号&#8221;, typeof(string)));<br />
        dt.Columns.Add(new DataColumn(&#8220;零件名称&#8221;, typeof(string)));<br />
        dt.Columns.Add(new DataColumn(&#8220;数量&#8221;, typeof(string)));<br />
        dt.Columns.Add(new DataColumn(&#8220;颜色&#8221;, typeof(string)));<br />
        dt.Columns.Add(new DataColumn(&#8220;重量&#8221;, typeof(string)));</p>
<p>       //读查询结果并放入表中<br />
        while (myReader.Read()) {<br />
            DataRow dr = dt.NewRow();<br />
            dr[0] = myReader.GetValue(0).ToString();<br />
            dr[1] = myReader.GetValue(1).ToString();<br />
            dr[2] = myReader.GetValue(2).ToString();<br />
            dr[3] = myReader.GetValue(3).ToString();<br />
            dr[4] = myReader.GetValue(4).ToString();<br />
            dt.Rows.Add(dr);<br />
        }<br />
            //关闭数据库连接<br />
            myConn.Close();</p>
<p>            //将查询结果显示到表格控件<br />
            this.GridViewlingj.DataSource = new DataView(dt);<br />
            this.GridViewlingj.DataBind();</p></blockquote>
<p>注意我的是数据库使用的是Windows验证方式，如果是混合模式，需要加入user id=和password=等字段来登录数据库。注意以上的源代码里面的标点符号都由wordpress编码自动换成了中文标点符号，复制后需要把它们修改成为英文输入法下的标点符号，否则就会出错。</p>

	标签：<a href="http://myet.info/archives/tag/net" title=".net" rel="tag nofollow">.net</a>, <a href="http://myet.info/archives/tag/c" title="c#" rel="tag nofollow">c#</a>, <a href="http://myet.info/archives/tag/%e5%ad%a6%e4%b9%a0" title="学习" rel="tag nofollow">学习</a>, <a href="http://myet.info/archives/tag/%e6%8a%80%e6%9c%af" title="技术" rel="tag nofollow">技术</a>, <a href="http://myet.info/archives/tag/%e8%83%bd%e5%8a%9b" title="能力" rel="tag nofollow">能力</a><br />

	<br/><h4>相关日志-博文</h4>
	<ul class="st-related-posts">
	<li><a href="http://myet.info/archives/427.html" title="用新浪UC聊天室进行远程培训 (2008年十一月月4日)">用新浪UC聊天室进行远程培训</a> (1)</li>
	<li><a href="http://myet.info/archives/816.html" title="教学模式 (2010年二月月28日)">教学模式</a> (4)</li>
	<li><a href="http://myet.info/archives/700.html" title="根据艾宾浩斯遗忘曲线规律来背（记）单词 (2009年三月月8日)">根据艾宾浩斯遗忘曲线规律来背（记）单词</a> (5)</li>
	<li><a href="http://myet.info/archives/767.html" title="香港神童11岁攻读数学硕士 (2009年六月月9日)">香港神童11岁攻读数学硕士</a> (2)</li>
	<li><a href="http://myet.info/archives/374.html" title="我博客使用的一些插件及函数 (2008年十月月29日)">我博客使用的一些插件及函数</a> (6)</li>
</ul>

]]></content:encoded>
			<wfw:commentRss>http://myet.info/archives/532.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
