标题:怎样用代码创建一个SQL数据库(表)?
取消只看楼主
蘑菇
Rank: 1
等 级:新手上路
帖 子:53
专家分:0
注 册:2005-10-13
 问题点数:0 回复次数:10 
怎样用代码创建一个SQL数据库(表)?
怎样用代码创建一个SQL数据库?找了半天也找不到一个办法,急死我了

[此贴子已经被作者于2005-12-16 13:23:37编辑过]


搜索更多相关主题的帖子: SQL 数据库 代码 办法 
2005-12-15 16:15
蘑菇
Rank: 1
等 级:新手上路
帖 子:53
专家分:0
注 册:2005-10-13
得分:0 
我就是不知道具体怎么写语句啊
我在网上找到一段这样的语句,可是运行却总是提示出错。

private void button1_Click(object sender, System.EventArgs e)
		{
			// 打开数据库连接
			if( conn.State != ConnectionState.Open)
				conn.Open();  
			string sql = "CREATE DATABASE mydb ON PRIMARY"
				+"(name=test_data, filename = 
'C:\\mysql\\mydb_data.mdf', size=3,"
				+"maxsize=5, filegrowth=10%)log on"
				+"(name=mydbb_log, 
filename='C:\\mysql\\mydb_log.ldf',size=3,"
				+"maxsize=20,filegrowth=1)"; 
			cmd = new SqlCommand(sql, conn);
			try
			{
				cmd.ExecuteNonQuery();
			}
			catch(SqlException ae)
			{
				MessageBox.Show(ae.Message.ToString());
			}
		}
2005-12-16 07:09
蘑菇
Rank: 1
等 级:新手上路
帖 子:53
专家分:0
注 册:2005-10-13
得分:0 

首先出来提示框:
未处理的“System.NullReferenceException”类型的异常出现在 数据库创建及连接程序.exe 中。

其他信息: 未将对象引用设置到对象的实例。

选择中断后标示行为:if( conn.State != ConnectionState.Open)
如果//掉这行,标示行就会移到下一行

2005-12-16 07:13
蘑菇
Rank: 1
等 级:新手上路
帖 子:53
专家分:0
注 册:2005-10-13
得分:0 
连通数据库?我就是要创建数据库啊!还没创建怎么连数据库呢?
2005-12-16 09:59
蘑菇
Rank: 1
等 级:新手上路
帖 子:53
专家分:0
注 册:2005-10-13
得分:0 
多谢版主,问题解决了,虽然我不知道为什么这样就能解决,但是我按照你说的先连接,
加了下面这段语句就能创建数据库了。

string connString;
connString="Initial Catalog=;Data Source=DQL;user id=sa;password=;";
conn=new SqlConnection (connString);

真的非常感谢。
2005-12-16 10:06
蘑菇
Rank: 1
等 级:新手上路
帖 子:53
专家分:0
注 册:2005-10-13
得分:0 

版主,问题又来了
我创建了数据库,现在想新建表并向表中添加记录。但是语句出错了,错误提示:系统错误。
出错行为:
string sql ="CREATE TABLE myTable"+
"(myId INTEGER CONSTRAINT PKeyMyId PRIMARY KEY,"+
"myName CHAR(50), myAddress CHAR(255), myBalance FLOAT(20))";

我查了SQL2000的书,语句格式没有错啊。请问是怎么回事?
为了给您检查错误提供便利我就顺便把整段代码贴出来了,代码如下:
string connString;
connString="Initial Catalog=addresslist;Data Source=DQL;user id=sa;password=;";
conn=new SqlConnection (connString);


// 打开数据库连接
if( conn.State == ConnectionState.Open)
conn.Close();
connString ="Integrated Security=SSPI;" +
"Initial Catalog=mydb;" +
"Data Source=localhost;";
conn.ConnectionString = connString;
conn.Open();
string sql ="CREATE TABLE myTable"+
"(myId INTEGER CONSTRAINT PKeyMyId PRIMARY KEY,"+
"myName CHAR(50), myAddress CHAR(255), myBalance FLOAT(20))";
cmd = new SqlCommand(sql, conn);
try
{
cmd.ExecuteNonQuery();
// 向表中添加记录
sql = "INSERT INTO myTable(myId, myName, myAddress, myBalance) "+
"VALUES (1001, 'Puneet Nehra', 'A 449 Sect 19, DELHI', 23.98 ) " ;
cmd = new SqlCommand(sql, conn);
cmd.ExecuteNonQuery();
sql = "INSERT INTO myTable(myId, myName,myAddress, myBalance) "+
"VALUES (1002, 'Anoop Singh', 'Lodi Road, DELHI', 353.64) " ;
cmd = new SqlCommand(sql, conn);
cmd.ExecuteNonQuery();
sql = "INSERT INTO myTable(myId, myName, myAddress, myBalance) "+
"VALUES (1003, 'Rakesh M', 'Nag Chowk, Jabalpur M.P.', 43.43) " ;
cmd = new SqlCommand(sql, conn);
cmd.ExecuteNonQuery();
sql = "INSERT INTO myTable(myId, myName, myAddress, myBalance) "+
"VALUES (1004, 'Madan Kesh', '4th Street, Lane 3, DELHI', 23.00) " ;
cmd = new SqlCommand(sql, conn);
cmd.ExecuteNonQuery();
}
catch(SqlException ae)
{
MessageBox.Show(ae.Message.ToString());
}

2005-12-16 11:27
蘑菇
Rank: 1
等 级:新手上路
帖 子:53
专家分:0
注 册:2005-10-13
得分:0 
版主请帮帮我啊
2005-12-16 14:49
蘑菇
Rank: 1
等 级:新手上路
帖 子:53
专家分:0
注 册:2005-10-13
得分:0 

不大懂啊,我把那些new command注释掉还是出同样的错

2005-12-16 21:24
蘑菇
Rank: 1
等 级:新手上路
帖 子:53
专家分:0
注 册:2005-10-13
得分:0 
都沉到第二页了...
我顶上去
2005-12-18 20:56
蘑菇
Rank: 1
等 级:新手上路
帖 子:53
专家分:0
注 册:2005-10-13
得分:0 
楼上的,你说的那个方法没用啊
我试了,不那样写还能编译,写了连运行都运行不了
2005-12-20 16:34



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-38317-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.116343 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved