比如我要建一个表,本来是要这样写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#语句应该怎么实现阿?
谢谢

解决方案 »

  1.   

    string strSQL = @"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
    )
    ";
      

  2.   

    StringBuilder sb = new StringBuilder ();
    sb.Apppend("USE databasename GO CREATE TABLE tablename");
    for(....)
    {
       sb.Append("bbb int not null,");
    }
    sb.Append("......");在这里执行sb.ToString()就可以了。
      

  3.   

    中间部分可以List<string> lst=new List<string>();
    for(...)
      lst.Add(单行字段定义)string 中间部分=string.Join(",\r\n",lst.ToArray()) ;
      

  4.   

    如果是要循环添加字段就用 :
    sql ="";
    sql="USE databasename GO CREATE TABLE tablename";
    for(int i = 0;i< length;i++)
    {
       sql+="字段";
    }
    sql +="";
      

  5.   


    有Go在C#里根本就没办法执行,又不是在查询分析器里
      

  6.   

    其实在我看来只要Create Table那一句就可以了。
      

  7.   

    string strSQL = @"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
    )
    ";
      

  8.   

    StringBuilder sb = new StringBuilder ();
    sb.AppendLine("if @@error>0 ");
    sb.AppendLine("rollback ");
    sb.AppendLine("else ");
    sb.AppendLine("commit");
    sb.AppendLine
    这个可以换行的   我一般就用这个
      

  9.   

     执行的时候, 不会在乎是否有  换行等.
    你直接一个个不管怎么样 append 到一起,凑成完整的 sql 就是. 不用担心换行的问题.
      

  10.   

    string strSQL = "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 "+
    ") " ;
    注意每个  "+ 前面要放个空格 这样就可以了