如果它不存在,C#SQL创建表

这个问题在这里已经有了答案:

  • 检查表中是否存在SQL Server 21的答案

  • 在SQL Server 2005下的语法是

    IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[tablename]') AND type in (N'U'))
    BEGIN
      -- create
    END
    

    在你的代码中, = FALSENOT关键字在哪里?


    如果存在的话,你的SQL正在创建这个表,如果它不存在的话。

    更改SQL以读取IF NOT EXISTS


    您还可以查看使用Microsoft SMO对象。 我更喜欢使用SMO对象,并让他们尽可能为我做这项工作,而不是通过代码执行SQL文本。

    使用SMO数据库对象可以执行以下操作。

    Database db = myServer.Databases["MyDB"];
    
    if (! db.Tables.Contains("NewTable"))
    {
    
        Table tbl = new Table(db, "NewTable");
    
        Column col1 = new Column(tbl, "Column1", DataType.Varchar(10));
        col1.Nullable = true;
        tbl.Columns.Add(col1);
    
        tbl.Create();
    
    }
    

    http://www.mssqltips.com/tip.asp?tip=1826

    链接地址: http://www.djcxy.com/p/94437.html

    上一篇: C# SQL create table IF it doesn't already exist

    下一篇: CREATE TABLE IF NOT EXISTS equivalent in SQL Server