Maison base de données tutoriel mysql 让你提前认识软件开发(36):如何扩展数据表字段?

让你提前认识软件开发(36):如何扩展数据表字段?

Jun 07, 2016 pm 03:58 PM
如何 字段 扩展 数据表 软件开发

第2部分 数据库SQL语言 如何扩展数据表字段? 【文章摘要】 在通信类软件中,经常会与数据库打交道。由于需求变化,或者是程序优化升级等原因,对数据表字段进行扩展是常有的事情。这就要求开发人员必须熟练掌握对数据表字段进行扩展的操作流程。 本文基于作

第2部分 数据库SQL语言

如何扩展数据表字段?

【文章摘要】

在通信类软件中,经常会与数据库打交道。由于需求变化,或者是程序优化升级等原因,对数据表字段进行扩展是常有的事情。这就要求开发人员必须熟练掌握对数据表字段进行扩展的操作流程。

本文基于作者的数据库方面的工作经验,以实际的SQL程序为例,详细介绍了如何对对数据表字段进行扩展,为相关的开发工作提供了参考。

【关键词】

数据库 数据表 扩展 SQL 开发

一、前言

在实际的软件开发项目中,对数据表字段的扩展包括如下两个方面:

第一,对原有字段值的扩展。例如,原表有一个字段“result”,表示结果,之前的取值为0和1,现在要扩展其取值范围,添加一个结果值2。对于此类扩展,数据表的结构不用动,只需要让相关模块知道有这个值的扩展即可。

第二,新增加字段。即原来表已有的字段不能满足当前的要求,需要新增一个或几个字段,这就涉及到数据表结构的改变。

本文主要讨论第二种情况下数据表字段扩展的流程和操作方法。本文中的所有脚本都是基于Sybase数据库。

二、数据表字段扩展的流程

对于新增字段的情况,不能通过简单的删除表和重建表来完成,因为在实际的软件运行环境中,几乎每个数据表里面都会有很多的数据。如果不管三七二十一,将表删除了,会导致某些重要数据的丢失,造成极为不良的影响,甚至会引起客户的投诉。

在实际的软件开发项目中,对数据表字段的扩展流程如图1所示。

\

图1 对数据表字段的扩展流程

 

三、数据表字段扩展操作示例

有一个员工信息表,包含了工号、姓名和年龄三个字段,如下所示:

create table tb_employeeinfo

(

workid int default(0) not null, -- workid

name varchar(50) default('') not null, -- name

age int default(0) not null -- age

)

go

create unique index idx1_tb_employeeinfo on tb_employeeinfo(workid)

go

print 'create table tb_employeeinfo ok'

go

现在需要在原表的基础之上扩展一个地址(address)字段,用于记录员工的居住地址,该字段可以为空。

整个字段扩展的执行SQL脚本如下:

-- 第一步: 创建备份表

if exists(select * from sysobjects where name='tb_employeeinfobak')

drop table tb_employeeinfobak

go

create table tb_employeeinfobak

(

workid int default(0) not null, -- workid

name varchar(50) default('') not null, -- name

age int default(0) not null -- age

)

go

create unique index idx1_tb_employeeinfobak on tb_employeeinfobak(workid)

go

print 'create table tb_employeeinfobak ok'

go

-- 第二步: 将原表内容插入到备份表中

insert into tb_employeeinfobak(workid, name, age) select workid, name, age from tb_employeeinfo

go

-- 第三步: 将原表删除掉

if exists(select * from sysobjects where name='tb_employeeinfo')

drop table tb_employeeinfo

go

-- 第四步: 创建新表

create table tb_employeeinfo

(

workid int default(0) not null, -- workid

name varchar(50) default('') not null, -- name

age int default(0) not null, -- age

address varchar(100) null -- address

)

go

create unique index idx1_tb_employeeinfo on tb_employeeinfo(workid)

go

print 'create table tb_employeeinfo ok'

go 

-- 第五步: 将备份表内容插入到新表中

insert into tb_employeeinfo(workid, name, age) select workid, name, age from tb_employeeinfobak

go 

-- 第六步: 删除备份表

if exists(select * from sysobjects where name='tb_employeeinfobak')

drop table tb_employeeinfobak

go 

经过以上六个步骤,即实现了对数据表的字段扩展,并且原来的数据也没有丢失。 

四、总结

本文以实际的SQL脚本为例,详细介绍了对数据表字段进行扩展的整个流程,为相关软件开发活动的开展提供了有益的参考。 

(本人微博:http://weibo.com/zhouzxi?topnav=1&wvr=5,微信号:245924426,欢迎关注!)

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Repo: Comment relancer ses coéquipiers
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Combien de temps faut-il pour battre Split Fiction?
3 Il y a quelques semaines By DDD

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Extensions et modules tiers pour les fonctions PHP Extensions et modules tiers pour les fonctions PHP Apr 13, 2024 pm 02:12 PM

Pour étendre les fonctionnalités des fonctions PHP, vous pouvez utiliser des extensions et des modules tiers. Les extensions fournissent des fonctions et des classes supplémentaires qui peuvent être installées et activées via le gestionnaire de packages pecl. Les modules tiers fournissent des fonctionnalités spécifiques et peuvent être installés via le gestionnaire de packages Composer. Des exemples pratiques incluent l'utilisation d'extensions pour analyser des données JSON complexes et l'utilisation de modules pour valider les données.

Du début à la fin : Comment utiliser l'extension php cURL pour effectuer des requêtes HTTP Du début à la fin : Comment utiliser l'extension php cURL pour effectuer des requêtes HTTP Jul 29, 2023 pm 05:07 PM

Du début à la fin : Comment utiliser l'extension php cURL pour les requêtes HTTP Introduction : En développement web, il est souvent nécessaire de communiquer avec des API tierces ou d'autres serveurs distants. Utiliser cURL pour effectuer des requêtes HTTP est un moyen courant et puissant. Cet article expliquera comment utiliser PHP pour étendre cURL afin d'effectuer des requêtes HTTP et fournira quelques exemples de code pratiques. 1. Préparation Tout d'abord, assurez-vous que l'extension cURL est installée sur php. Vous pouvez exécuter php-m|grepcurl sur la ligne de commande pour vérifier

Comment installer l'extension mbstring sous CENTOS7 ? Comment installer l'extension mbstring sous CENTOS7 ? Jan 06, 2024 pm 09:59 PM

1.UncaughtError:Calltoundefinedfunctionmb_strlen(); Lorsque l'erreur ci-dessus se produit, cela signifie que nous n'avons pas installé l'extension mbstring ; 2. Entrez dans le répertoire d'installation de PHP cd/temp001/php-7.1.0/ext/mbstring ; /usr/local/bin /phpize ou /usr/local/php7-abel001/bin/phpize) pour installer l'extension php 4../configure--with-php-config=/usr/local/php7-abel

Tendance transformatrice : l'intelligence artificielle générative et son impact sur le développement de logiciels Tendance transformatrice : l'intelligence artificielle générative et son impact sur le développement de logiciels Feb 26, 2024 pm 10:28 PM

L’essor de l’intelligence artificielle entraîne le développement rapide du développement de logiciels. Cette technologie puissante a le potentiel de révolutionner la façon dont nous construisons des logiciels, avec des impacts considérables sur tous les aspects de la conception, du développement, des tests et du déploiement. Pour les entreprises qui tentent de se lancer dans le domaine du développement dynamique de logiciels, l’émergence de la technologie de l’intelligence artificielle générative leur offre des opportunités de développement sans précédent. En intégrant cette technologie de pointe dans leurs processus de développement, les entreprises peuvent augmenter considérablement l’efficacité de la production, réduire les délais de mise sur le marché des produits et lancer des produits logiciels de haute qualité qui se démarquent sur le marché numérique extrêmement concurrentiel. Selon un rapport de McKinsey, la taille du marché de l’intelligence artificielle générative devrait atteindre 4 400 milliards de dollars d’ici 2031. Ces prévisions reflètent non seulement une tendance, mais montrent également le paysage technologique et commercial.

Raisons et solutions pour lesquelles le lecteur D ne peut pas être étendu dans le système win11 Raisons et solutions pour lesquelles le lecteur D ne peut pas être étendu dans le système win11 Jan 08, 2024 pm 12:30 PM

Certains utilisateurs estiment que leur espace disque n'est pas suffisant et souhaitent étendre l'espace disque d. Cependant, pendant l'opération, ils constatent que leur disque win11d ne peut pas être étendu et que le volume étendu est gris. espace disque insuffisant. Jetons un coup d’œil aux solutions ci-dessous. Pourquoi le disque win11d ne peut pas être étendu : 1. Espace insuffisant 1. Tout d'abord, pour étendre le disque d, vous devez vous assurer que votre disque dispose d'un « espace disponible », comme le montre la figure. 2. S'il n'y a pas d'espace disponible comme celui-ci, alors il n'y a naturellement aucun moyen de s'étendre. 3. Si vous souhaitez étendre le lecteur D à ce moment, vous pouvez trouver d'autres disques, faites un clic droit et sélectionnez « Compresser le volume ». 4. Entrez l'espace que vous souhaitez étendre pour compresser, puis cliquez sur « OK » pour obtenir le espace disponible. 2. Les disques ne sont pas adjacents. 1. Pour étendre un disque, vous pouvez

Applications d'intelligence artificielle dans le développement de logiciels : automatisation et optimisation Applications d'intelligence artificielle dans le développement de logiciels : automatisation et optimisation Sep 02, 2023 pm 01:53 PM

En tant que technologie de pointe, l’intelligence artificielle (IA) présente un grand potentiel dans divers domaines. Dans le domaine du développement de logiciels, l’application de l’intelligence artificielle a également suscité une grande attention. De l'automatisation des tâches à l'optimisation du code, l'IA offre aux développeurs de nombreuses façons innovantes d'augmenter l'efficacité, la qualité et la créativité. Cet article explorera l'application de l'intelligence artificielle dans le développement de logiciels, en se concentrant sur le développement de tâches d'automatisation et d'optimisation 1. Génération de code En apprenant les bases de code existantes, l'intelligence artificielle peut générer automatiquement des extraits de code ou même des modules complets. Ceci est très utile aux développeurs pour créer rapidement des frameworks de base, économisant ainsi du temps et des efforts. Par exemple, certains outils d'IA peuvent générer du code standard basé sur les exigences, permettant ainsi aux développeurs de commencer à travailler plus rapidement2.

Quel est le lien entre les types de valeurs renvoyées par les fonctions PHP et l'interopérabilité des extensions PHP ? Quel est le lien entre les types de valeurs renvoyées par les fonctions PHP et l'interopérabilité des extensions PHP ? Apr 15, 2024 pm 09:06 PM

Les types de valeurs de retour des fonctions PHP peuvent être exprimés sous forme de syntaxe de description de type, qui spécifie clairement le type de valeur de retour de chaque fonction. Comprendre les types de valeurs de retour est essentiel pour créer des extensions compatibles avec le moteur principal PHP, éviter les conversions inattendues, améliorer l'efficacité et améliorer la lisibilité du code. Plus précisément, les fonctions d'extension peuvent définir un type de valeur de retour afin que le moteur PHP puisse optimiser l'exécution du code en fonction de ce type et permettre aux développeurs de gérer explicitement la valeur de retour. En pratique, les fonctions d'extension peuvent renvoyer des objets PHP et le code PHP peut gérer les résultats renvoyés en fonction du type de valeur de retour.

Que dois-je faire si l'extension affichée dans le coin supérieur droit du navigateur Sogou est manquante ? Que dois-je faire si l'extension affichée dans le coin supérieur droit du navigateur Sogou est manquante ? Jan 31, 2024 pm 02:54 PM

Que dois-je faire si l'extension affichée dans le coin supérieur droit du navigateur Sogou est manquante ? Comment puis-je l'afficher ? Il y a une barre d'extension dans le coin supérieur droit du navigateur Sogou, qui affiche diverses extensions que les utilisateurs ont téléchargées et installées. Cependant, en raison de certaines de nos opérations, la barre d'extension est manquante. Comment le faire fonctionner pour qu'il soit affiché ! L'éditeur ci-dessous a trié les solutions pour savoir quoi faire si l'extension affichée dans le coin supérieur droit du navigateur Sogou est manquante. Sinon, suivez-moi et continuez à lire ! Que dois-je faire si l'extension affichée dans le coin supérieur droit du navigateur Sogou est manquante ? 1. Ouvrez d'abord le navigateur Sogou. Vous pouvez voir une icône « Afficher le menu » composée de trois lignes horizontales dans le coin supérieur droit du navigateur. la souris pour cliquer sur l'icône. 2. Après avoir cliqué, une fenêtre de menu apparaîtra ci-dessous.

See all articles