比如我要建一个表,本来是要这样写sql语句:
USE databasename
GO
CREATE TABLE tablename
aaa int not null,
bbb int not null,
ccc char(10) null,
ddd char(10) null
PRIMARY KEY CLUSTERED
(
aaa asc,
bbb asc
)
)头尾是可以直接写的,表字段部分因为字段比较多一些,是通过for循环写的(根据程序的结构,必须用循环写)
请问用C#语句应该怎么实现阿?
谢谢
USE databasename
GO
CREATE TABLE tablename
aaa int not null,
bbb int not null,
ccc char(10) null,
ddd char(10) null
PRIMARY KEY CLUSTERED
(
aaa asc,
bbb asc
)
)头尾是可以直接写的,表字段部分因为字段比较多一些,是通过for循环写的(根据程序的结构,必须用循环写)
请问用C#语句应该怎么实现阿?
谢谢
GO
CREATE TABLE tablename
aaa int not null,
bbb int not null,
ccc char(10) null,
ddd char(10) null
PRIMARY KEY CLUSTERED
(
aaa asc,
bbb asc
)
";
sb.Apppend("USE databasename GO CREATE TABLE tablename");
for(....)
{
sb.Append("bbb int not null,");
}
sb.Append("......");在这里执行sb.ToString()就可以了。
for(...)
lst.Add(单行字段定义)string 中间部分=string.Join(",\r\n",lst.ToArray()) ;
sql ="";
sql="USE databasename GO CREATE TABLE tablename";
for(int i = 0;i< length;i++)
{
sql+="字段";
}
sql +="";
有Go在C#里根本就没办法执行,又不是在查询分析器里
GO
CREATE TABLE tablename
aaa int not null,
bbb int not null,
ccc char(10) null,
ddd char(10) null
PRIMARY KEY CLUSTERED
(
aaa asc,
bbb asc
)
";
sb.AppendLine("if @@error>0 ");
sb.AppendLine("rollback ");
sb.AppendLine("else ");
sb.AppendLine("commit");
sb.AppendLine
这个可以换行的 我一般就用这个
你直接一个个不管怎么样 append 到一起,凑成完整的 sql 就是. 不用担心换行的问题.
"GO "+
"CREATE TABLE tablename "+
"aaa int not null, "+
"bbb int not null, "+
"ccc char(10) null, "+
"ddd char(10) null "+
"PRIMARY KEY CLUSTERED "+
"( "+
"aaa asc, "+
"bbb asc "+
") " ;
注意每个 "+ 前面要放个空格 这样就可以了