加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

MYSQL教程sql动态添加字段实例解析

发布时间:2020-12-12 02:44:31 所属栏目:MySql教程 来源:网络整理
导读:《MYSQL教程sql动态添加字段实例解析》要点: 本文介绍了MYSQL教程sql动态添加字段实例解析,希望对您有用。如果有疑问,可以联系我们。 导读:实现功能:在SQL Server表中,当用户添加一条字段信息数据到一个SQL Server表中,通过触发器相应在另一个表中自动

《MYSQL教程sql动态添加字段实例解析》要点:
本文介绍了MYSQL教程sql动态添加字段实例解析,希望对您有用。如果有疑问,可以联系我们。

导读:实现功能:在SQL Server表中,当用户添加一条字段信息数据到一个SQL Server表中,通过触发器相应在另一个表中自动增加一个对应的字段.1...

MYSQL入门实现功能:
在SQL Server表中,通过触发器相应在另一个表中自动增加一个对应的字段.

MYSQL入门1,首先,建立一个字段信息表Fields
?

CREATE TABLE [dbo].[Fields] (?
?[FieldID] [int] IDENTITY (1,1) NOT NULL,?
?[Name] [varchar] (50) COLLATE Chinese_PRC_CI_AS NOT NULL,?
?[DataType] [varchar] (50) COLLATE Chinese_PRC_CI_AS NOT NULL??
) ON [PRIMARY]?
GO?
?
ALTER TABLE [dbo].[Fields] ADD??
?CONSTRAINT [PK_Fields] PRIMARY KEY? CLUSTERED??
?(?
? [FieldID]?
?)? ON [PRIMARY]??
GO

MYSQL入门2,建立一个动态字段表Customeres,当Fields每增加一条记录,本表就相应增加一个字段.
?

CREATE TABLE [dbo].[Customeres] (?
?[ID] [int] IDENTITY (1,1) NOT NULL??
) ON [PRIMARY]?
GO?
?
ALTER TABLE [dbo].[Customeres] ADD??
?CONSTRAINT [PK_Customeres] PRIMARY KEY? CLUSTERED??
?(?
? [ID]?
?)? ON [PRIMARY]??
GO?

MYSQL入门3,为SQL Server表Fields新增一个触发器,当增加数据时,都会自动调用此触发器.
注意:字段的长度硬编码,只是为了演示目的,应根据自己的需要来动态调整长度.
?

CREATE TRIGGER trigger_addField ON Fields?
FOR INSERT?
AS?
?
DECLARE @FieldID int,?
?@Name varchar(50),?
?@DataType varchar(50),?
?@SQL varchar(1000)?
?
SELECT @FieldIDFieldID = FieldID,@Name = [Name],@DataTypeDataType = DataType?
FROM Inserted?
if not exists (SELECT * FROM syscolumns??
?where id=object_id('Customeres')?
?AND name=@Name)?
BEGIN?
?SET @SQL = 'ALTER table Customeres add ' + @Name + ' '??
? + @DataType + '(64) NULL'?
?EXEC (@SQL)?
END?
PRINT @Name + ',' + @DataType?

MYSQL入门4,在查询分析中执行
?

Insert into Fields ([name],DataType) values ('name','varchar')

编程之家PHP培训学院每天发布《MYSQL教程sql动态添加字段实例解析》等实战技能,PHP、MYSQL、LINUX、APP、JS,CSS全面培养人才。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读