SQL Server 新手入门:如何幽默地创建表
mssql create 表

首页 2025-09-02 08:01:52

说来惭愧,我当年第一次听说“表”不是饭桌,而是数据库里那位横平竖直、冷若冰霜的主儿时,差点把键盘扣在项目经理脸上——毕竟,我以为“create 表”就是去楼下兰州拉面喊一句“老板,来碗大的”。结果老板没理我,SQL Server 倒是理我了,回了我一行冷冰冰的:
“Msg 102,Level 15,State 1,语法不对,回家练练。”
练?我练你个鬼!可人在江湖,数据不由己。于是我抱着泡好的方便面,蹲在机房角落,跟那位叫“MSSQL”的老大哥展开了长达三小时的拉锯战。下面请欣赏我那段血泪脱口秀,以及脱口秀结束后附赠的“手把手教你把表炒出香味”教程。
——脱口秀开始——
  1. 起名:别学我,当年我把表起名叫“temp_我是谁我在哪_20250902”。结果同事看完,以为我在写哲学论文。记住:表名要短、要狠、要像武侠小说里的兵器,看见就知道是干嘛的。比如:User、Order、Money——最后一个纯属幻想。
  2. 列:列就像相亲时的条件清单。身高 int,体重 decimal(5,2),颜值……对不起,SQL Server 没这类型,建议用 nvarchar(50) 存“沉鱼落雁”或“车祸现场”。别忘了主键!没有主键的表,就像没有身份证号码的黑户,走哪儿都被嫌弃。
  3. 约束:NOT NULL 是“敢不带礼物就别进门”,DEFAULT 是“忘了买礼物就送空气”,CHECK 是“身高低于 180cm 的请自觉左转”。外键?那是你妈给你安排的相亲对象,不经过她同意,你敢删?
  4. 炒表:写完 CREATE TABLE,按下 F5,就像掀开锅盖——嘎吱一声,热气腾腾。如果报错,别急,把错误号贴到搜索引擎里,你会发现全地球的倒霉蛋都在陪你。
——脱口秀结束,下面进入“真香教程”——
【教程】在 SQL Server 里 CREATE 表,一步一步像泡面
步骤 1:打开 SQL Server Management Studio(简称 SSMS),连接到服务器。如果连不上,八成是防火墙在吃醋,把端口 1433 哄一哄。
步骤 2:找到你要放表的数据库,右键“新建查询”。记住别在 master 里瞎折腾,否则 DBA 会把你当熊孩子。
步骤 3:写模板。模板就像方便面袋子,照抄不会错:
sql
复制
CREATE TABLE dbo.Users
(
    UserID      int            NOT NULL IDENTITY(1,1) PRIMARY KEY,
    UserName    nvarchar(50)   NOT NULL,
    Age         int            NULL CHECK (Age BETWEEN 0 AND 120),
    CreateTime  datetime2      NOT NULL DEFAULT (SYSDATETIME())
);
逐行拆解:
  • dbo.Users:dbo 是默认架构,Users 是表名。
  • UserID:主键,自增种子 1、步长 1,省心省力。
  • UserName:不允许空,防止出现“无名氏”。
  • Age:可空,但用 CHECK 约束拦住 200 岁的老妖怪。
  • CreateTime:默认当前时间,谁插数据谁省心。
步骤 4:按 F5。成功会看到“命令已成功完成。”
如果报错,请把错误信息原封不动复制到搜索框,九成问题 Stack Overflow 上都有人哭着答过。
步骤 5:验证。执行:
sql
复制
SELECT * FROM dbo.Users;
空空如也?正常,你刚把锅烧热,还没下米。
步骤 6:插一条试试:
sql
复制
INSERT INTO dbo.Users (UserName, Age)
VALUES (N'隔壁老王', 30);
再 SELECT,能看到老王挺胸抬头坐在那里,就说明锅铲已就位。
步骤 7:加料。想给表再增加一列“微信钱包余额”:
sql
复制
ALTER TABLE dbo.Users
ADD Wallet decimal(12,2) NOT NULL DEFAULT (0.00);
步骤 8:清锅。如果真不想要了:
sql
复制
DROP TABLE IF EXISTS dbo.Users;
一句带走,连渣都不剩。
——结语——
至此,你已学会在 SQL Server 里“create 表”的脱口秀和正经教程。下次再有人问你“表怎么建”,你可以把这篇甩给他,然后深藏功与名,转身去楼下吃拉面——记得加蛋。
MySQL连接就这么简单!本地远程、编程语言连接方法一网打尽
还在为MySQL日期计算头疼?这份加一天操作指南能解决90%问题
MySQL日志到底在哪里?Linux/Windows/macOS全平台查找方法在此
MySQL数据库管理工具全景评测:从Workbench到DBeaver的技术选型指南
MySQL密码忘了怎么办?这份重置指南能救急,Windows/Linux/Mac都适用
你的MySQL为什么经常卡死?可能是锁表在作怪!快速排查方法在此
MySQL单表卡爆怎么办?从策略到实战,一文掌握「分表」救命技巧
清空MySQL数据表千万别用错!DELETE和TRUNCATE这个区别可能导致重大事故
你的MySQL中文排序一团糟?记住这几点,轻松实现准确拼音排序!
别再混淆Hive和MySQL了!读懂它们的天壤之别,才算摸到大数据的门道