Advertisement

SQL中添加表列、字段描述及默认值和删除字段的操作

  •  5星
  •     浏览量: 0
  •     大小:None
  •      文件类型:None


简介:
本教程详细介绍了在SQL中添加新表列及其字段描述与默认值的方法,并讲解了如何安全地删除不再需要的字段。 在SQL语句中执行如下操作: 1. 删除表(如果存在): ```sql IF EXISTS (SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N[dbo].[JHCRM_Report_ss]) AND OBJECTPROPERTY(id, NIsUserTable) = 1) DROP TABLE [JHCRM_Report_ss] ``` 2. 创建新表(如果不存在): ```sql IF NOT EXISTS (SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N[dbo].[Table1]) AND OBJECTPROPERTY(id, NIsUserTable) = 1) CREATE TABLE [Table1] ([col1] int,[col2] int) ``` 3. 添加新字段: ```sql IF NOT EXISTS (SELECT * FROM syscolumns WHERE syscolumns.[name]=NFNewObjectEnd AND syscolumns.[id]=(SELECT id FROM dbo.sysobjects WHERE id=OBJECT_ID(N[dbo].[jsc_financial]) AND OBJECTPROPERTY(id, NIsUserTable) = 1)) ALTER TABLE jsc_financial ADD FNewObjectEnd int NULL -- 添加字段描述 EXEC sys.sp_addextendedproperty @name=NMS_Description, @value=N先用项目结项数 , @level0type=NSCHEMA,@level0name=Ndbo, @level1type=NTABLE, @level1name=Njsc_financial, @level2type=NCOLUMN, @level2name=FNewObjectEnd ``` 4. 添加新字段: ```sql IF NOT EXISTS (SELECT * FROM syscolumns WHERE syscolumns.[name]=NRecord_Money AND syscolumns.[id]=(SELECT id FROM dbo.sysobjects WHERE id=OBJECT_ID(N[dbo].[JHCRM_Resource_Record_Main]) AND OBJECTPROPERTY(id, NIsUserTable) = 1)) ALTER TABLE JHCRM_Resource_Record_Main ADD Record_Money numeric(12, 2) NULL -- 添加字段描述 EXEC sys.sp_addextendedproperty @name=NMS_Description, @value=N资源费用 , @level0type=NSCHEMA,@level0name=Ndbo, @level1type=NTABLE, @level1name=NJHCRM_Resource_Record_Main, @level2type=NCOLUMN, @level2name=Record_Money ``` 5. 删除字段: ```sql IF NOT EXISTS (SELECT * FROM syscolumns WHERE syscolumns.[name]=NtableName AND syscolumns.[id]=(SELECT id FROM dbo.sysobjects WHERE id = OBJECT_ID(N[dbo].[tableName]) AND OBJECTPROPERTY(id, NIsUserTable) = 1)) ALTER TABLE tableName DROP COLUMN tableName ```

全部评论 (0)

还没有任何评论哟~
客服
客服
  • SQL
    优质
    本教程详细介绍了在SQL中添加新表列及其字段描述与默认值的方法,并讲解了如何安全地删除不再需要的字段。 在SQL语句中执行如下操作: 1. 删除表(如果存在): ```sql IF EXISTS (SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N[dbo].[JHCRM_Report_ss]) AND OBJECTPROPERTY(id, NIsUserTable) = 1) DROP TABLE [JHCRM_Report_ss] ``` 2. 创建新表(如果不存在): ```sql IF NOT EXISTS (SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N[dbo].[Table1]) AND OBJECTPROPERTY(id, NIsUserTable) = 1) CREATE TABLE [Table1] ([col1] int,[col2] int) ``` 3. 添加新字段: ```sql IF NOT EXISTS (SELECT * FROM syscolumns WHERE syscolumns.[name]=NFNewObjectEnd AND syscolumns.[id]=(SELECT id FROM dbo.sysobjects WHERE id=OBJECT_ID(N[dbo].[jsc_financial]) AND OBJECTPROPERTY(id, NIsUserTable) = 1)) ALTER TABLE jsc_financial ADD FNewObjectEnd int NULL -- 添加字段描述 EXEC sys.sp_addextendedproperty @name=NMS_Description, @value=N先用项目结项数 , @level0type=NSCHEMA,@level0name=Ndbo, @level1type=NTABLE, @level1name=Njsc_financial, @level2type=NCOLUMN, @level2name=FNewObjectEnd ``` 4. 添加新字段: ```sql IF NOT EXISTS (SELECT * FROM syscolumns WHERE syscolumns.[name]=NRecord_Money AND syscolumns.[id]=(SELECT id FROM dbo.sysobjects WHERE id=OBJECT_ID(N[dbo].[JHCRM_Resource_Record_Main]) AND OBJECTPROPERTY(id, NIsUserTable) = 1)) ALTER TABLE JHCRM_Resource_Record_Main ADD Record_Money numeric(12, 2) NULL -- 添加字段描述 EXEC sys.sp_addextendedproperty @name=NMS_Description, @value=N资源费用 , @level0type=NSCHEMA,@level0name=Ndbo, @level1type=NTABLE, @level1name=NJHCRM_Resource_Record_Main, @level2type=NCOLUMN, @level2name=Record_Money ``` 5. 删除字段: ```sql IF NOT EXISTS (SELECT * FROM syscolumns WHERE syscolumns.[name]=NtableName AND syscolumns.[id]=(SELECT id FROM dbo.sysobjects WHERE id = OBJECT_ID(N[dbo].[tableName]) AND OBJECTPROPERTY(id, NIsUserTable) = 1)) ALTER TABLE tableName DROP COLUMN tableName ```
  • 修改数据库
    优质
    本教程详细介绍了如何在数据库中安全地进行表结构变更操作,包括添加和移除字段的方法及注意事项。适合需要维护数据库结构的开发者参考学习。 删除表T2中的C2字段:`alter table T2 drop column C2;` 在表T1中添加一个类型为number(10)的g字段:`alter table t1 add g number(10);`
  • 根据SQL查找
    优质
    本教程教你如何使用SQL查询语句基于字段值精确查找包含特定数据的表格及其相关联的字段名。适合数据库管理与数据分析人员学习。 当你使用某软件并已知某个数据,但想查看该数据保存在SQL的哪个表和字段时,可以利用这个工具来方便地查找。
  • SQL Server设置日期类型
    优质
    本篇文章介绍了如何在SQL Server数据库中为日期类型字段设定默认值的方法和步骤,帮助开发者提高数据录入效率。 在SQL Server中设置日期类型字段的默认值。
  • 得珍藏佳文——PostgreSQL 约束指南
    优质
    本文为数据库管理员和技术爱好者提供了详细的指导,内容涵盖如何在PostgreSQL中添加与移除约束以及进行字段操作。是一份实用且易于理解的操作手册,助您优化数据库管理技能。 在PostgreSQL数据库中对表结构进行调整是常见的维护任务之一。本段落主要介绍了如何增加、删除约束以及添加或移除列的操作方法。 1. **增加约束**: - 主键:`ALTER TABLE table_name ADD PRIMARY KEY (column_name);` - 外键:`ALTER TABLE table_name ADD FOREIGN KEY (fk_column_name) REFERENCES referenced_table(referenced_column) ON UPDATE action ON DELETE action;` 其中,action可以是CASCADE, RESTRICT, NO ACTION或SET NULL。 - 检查约束:`ALTER TABLE table_name ADD CONSTRAINT constraint_name CHECK (condition);` - 唯一性约束:`ALTER TABLE table_name ADD CONSTRAINT unique_constraint_name UNIQUE (column_name);` 2. **删除约束**: - 通用语法为:`ALTER TABLE table_name DROP CONSTRAINT constraint_name;` - 移除非空约束使用特定语句:`ALTER TABLE table_name ALTER COLUMN column_name DROP NOT NULL;` 因非空约束没有名称,所以直接执行此命令即可。 3. **添加列**: - `ALTER TABLE table_name ADD COLUMN new_column_name data_type;` 如果未指定默认值,则新字段将填充NULL。 4. **删除列**: - 语法为:`ALTER TABLE table_name DROP COLUMN column_name;` 若该被引用的列有外键,需要使用CASCADE来移除所有依赖关系:`ALTER TABLE table_name DROP COLUMN column_name CASCADE;` 5. **更改默认值设置**: - 设置新默认值:`ALTER TABLE table_name ALTER COLUMN column_name SET DEFAULT new_default_value;` - 移除外键的默认值设定:`ALTER TABLE table_name ALTER COLUMN column_name DROP DEFAULT;` 6. **修改列的数据类型**: - `ALTER TABLE table_name ALTER COLUMN column_name TYPE new_data_type;` 此命令仅在所有现有数据能够无损转换时才有效。 7. **重命名列和表**: - 重命名列为:`ALTER TABLE table_name RENAME COLUMN old_column_name TO new_column_name;` - 表的重命名为:`ALTER TABLE table_name RENAME TO new_table_name;` 8. **创建表时增加约束**: - 检查约束可以在建表语句中定义,例如:`CREATE TABLE products (product_no integer, name text, price numeric CONSTRAINT positive_price CHECK (price > 0));` - 表级的约束允许在创建多个列的同时加入一个整体条件以确保所有组合满足特定规则。 进行这些操作时需要注意以下几点: - 更改表结构可能影响现有数据,因此执行前应备份或谨慎。 - 操作涉及的约束和列必须符合当前的数据模式,否则可能会出现错误。 - 使用CASCADE选项需小心处理因为这会级联删除相关项。 - 对于外键约束理解ON UPDATE和ON DELETE规则很重要,它们决定了被引用行变化时的行为。 掌握这些SQL语句将有助于在PostgreSQL环境中高效地管理数据库表结构,并确保数据的完整性和一致性。合理的表设计是应用程序的核心基础,良好的表结构与约束能够提高存储效率及应用性能。
  • SQL 符号,仅保留数
    优质
    本教程介绍如何使用SQL语句清除数据库字段中不必要的符号,确保只保留字母和数字字符,提升数据质量和一致性。 -- 去除字段中的符号,只保留数字和字母的SQL函数 CREATE FUNCTION DBO.REMOVE_SYMBLE(@S VARCHAR(100)) RETURNS VARCHAR(100) AS BEGIN DECLARE @RESULT VARCHAR(100) SET @RESULT = REPLACE(REPLACE(REPLACE(REPLACE(@S, [^a-zA-Z0-9], ), CHAR(34), ), CHAR(39), ), , ) RETURN @RESULT END
  • SQL备注方法
    优质
    本文将详细介绍如何在SQL中向现有表格中添加新字段以及设置字段备注信息的操作步骤和示例代码。 1. 添加字段:使用 `ALTER TABLE` 语句来添加新字段。例如: ```sql ALTER TABLE 表名 ADD 字段名 类型; ``` 示例代码为: ```sql ALTER TABLE sys_cwzd ADD SCCLLJ VARCHAR2(50); ``` 2. 添加备注:使用 `COMMENT ON COLUMN` 语句来添加字段的描述信息。例如: ```sql COMMENT ON COLUMN 表名.字段名 IS 备注名; ``` 示例代码为: ```sql COMMENT ON COLUMN sys_cwzd.SCCLLJ IS 上传材料路径; ``` 内容扩展:在表中添加新的城市代码字段,可以使用以下SQL语句: ```sql ALTER TABLE bulletin ADD citycode VARCHAR(6) NOT NULL DEFAULT 0; ``` 这表示向 `bulletin` 表中增加一个名为 `citycode` 的新字段,并设置其默认值为 0。 1. 创建数据库时设定编码:创建数据库时,可以通过指定字符集来确保数据的正确存储和显示。例如: ```sql CREATE DATABASE 数据库名 CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ``` 这将创建一个使用 `utf8mb4` 字符集和 `unicode_ci` 排序规则的新数据库,以支持广泛的字符编码需求。
  • 浅析在MySQL时间方法
    优质
    本文探讨了在MySQL数据库中为字段设置默认当前时间的有效方法,旨在帮助开发者简化时间和日期字段管理。 MySQL的日期类型有五种:date、time、year、datetime 和 timestamp。 - date 类型占用3个字节,格式为YYYY-MM-DD,用于存储日期值。 - time 类型同样占用3个字节,格式为HH:MM:SS,可以表示时间或持续的时间长度。 - year类型只占1个字节,并以四位数的年份形式(如 YYYY)进行存储。 - datetime类型需要8个字节来储存数据,它的格式是YYYY-MM-DD HH:MM:SS,用于记录日期和时间信息。 - timestamp 类型占用4个字节,其格式为YYYYMMDDHHMMSS。它可以同时表示混合的日期和时间,并且可以用作时间戳。 在实际应用中,在数据库表里需要记录每条数据的具体创建或修改的时间时,这些类型各有用途。特别是timestamp由于可以自动设置系统当前时间作为默认值而被广泛使用。
  • 在开放SQL Server动态
    优质
    本文介绍了如何在已存在的SQL Server数据库表中动态地添加新的字段。通过简单的T-SQL语句实现对现有数据结构的灵活扩展。 Delphi实例:在运行时刻动态地向已打开的SQLServer数据库表中添加新字段。