在SQL Server Express中创建表

时间:2009-08-28 03:26:44

标签: sql sql-server

我正在尝试为本地程序管理和安装系统设置SQL数据库。我想我已经创建了一个应该可行的基本可维护模式,但我不确定如何将其转换为CREATE TABLE命令。有人可以帮我翻译和/或指向我的资源吗?

架构:

Programs(
    progID[key] (integer/index field?),
    name (text),
    desc (text), 
    iconFile (path to file),
    installScript (path to file))

2 个答案:

答案 0 :(得分:3)

使用以下语法:

create table programs (
    progid int primary key identity(1,1),
    name nvarchar(255),
    description nvarchar(500),
    iconFile nvarchar(255),
    installScript nvarchar(255)
)

primary keyprogid列设置为表的索引列。 identity(1,1)子句将progid设置为自动递增字段,从1开始,每次递增1。因此,以下SQL将相应的行输入programs

insert into (name, description, iconfile, installscript)
values ('Name1', 'Test test', 'C:\file\path', 'C:\script\path')
insert into (name, description, iconfile, installscript)
values ('Name2', 'Test 123', 'C:\file\path1', 'C:\script\path2')

------------------------------------------------------------------
progid    name     description    iconfile        installscript
------------------------------------------------------------------
1         Name1    Test test      C:\file\path    C:\script\path
2         Name2    Test 123       C:\file\path1   C:\script\path2

另请注意,我使用的是nvarchar而不是varchar。这是因为nvarchar使用Unicode字符集,而varchar使用ASCII字符集。建议使用nvarchar,因为ASCII字符在Unicode中不占用额外空间,但Unicode确实允许国际化和模糊字符。

答案 1 :(得分:1)

关于SQL语法的问题应该在Stack Overflow处进行。

也就是说,如果您有SQL Studio Management Express(grab it from here),那么在创建表结构时,但在保存之前,您可以单击“生成脚本”图标(它有一个带有磁盘就可以了,它会显示它要执行的代码。