Heim Datenbank MySQL-Tutorial 让你提前认识软件开发(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,欢迎关注!)

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Wie man alles in Myrise freischaltet
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Von Anfang bis Ende: So verwenden Sie die PHP-Erweiterung cURL, um HTTP-Anfragen zu stellen Von Anfang bis Ende: So verwenden Sie die PHP-Erweiterung cURL, um HTTP-Anfragen zu stellen Jul 29, 2023 pm 05:07 PM

Von Anfang bis Ende: So verwenden Sie die PHP-Erweiterung cURL für HTTP-Anfragen. Einführung: Bei der Webentwicklung ist es häufig erforderlich, mit APIs von Drittanbietern oder anderen Remote-Servern zu kommunizieren. Die Verwendung von cURL zum Senden von HTTP-Anfragen ist eine gängige und leistungsstarke Methode. In diesem Artikel wird erläutert, wie Sie mit PHP cURL erweitern, um HTTP-Anfragen auszuführen, und einige praktische Codebeispiele bereitstellen. 1. Vorbereitung Stellen Sie zunächst sicher, dass PHP die cURL-Erweiterung installiert hat. Zur Überprüfung können Sie php-m|grepcurl in der Befehlszeile ausführen

Erweiterungen und Drittanbietermodule für PHP-Funktionen Erweiterungen und Drittanbietermodule für PHP-Funktionen Apr 13, 2024 pm 02:12 PM

Um die Funktionalität der PHP-Funktion zu erweitern, können Sie Erweiterungen und Module von Drittanbietern verwenden. Erweiterungen stellen zusätzliche Funktionen und Klassen bereit, die über den pecl-Paketmanager installiert und aktiviert werden können. Module von Drittanbietern bieten spezifische Funktionen und können über den Composer-Paketmanager installiert werden. Zu den praktischen Beispielen gehören die Verwendung von Erweiterungen zum Parsen komplexer JSON-Daten und die Verwendung von Modulen zur Datenvalidierung.

Wie installiere ich die MBstring-Erweiterung unter CENTOS7? Wie installiere ich die MBstring-Erweiterung unter CENTOS7? Jan 06, 2024 pm 09:59 PM

1.UncaughtError:Calltoundefinedfunctionmb_strlen(); Wenn der obige Fehler auftritt, bedeutet dies, dass wir die mbstring-Erweiterung nicht installiert haben. 2. Geben Sie das PHP-Installationsverzeichnis cd/temp001/php-7.1.0/ext/mbstring ein. 3. Starten Sie phpize( /usr/local/bin /phpize oder /usr/local/php7-abel001/bin/phpize) Befehl zum Installieren der PHP-Erweiterung 4../configure--with-php-config=/usr/local/php7-abel

Transformativer Trend: Generative künstliche Intelligenz und ihre Auswirkungen auf die Softwareentwicklung Transformativer Trend: Generative künstliche Intelligenz und ihre Auswirkungen auf die Softwareentwicklung Feb 26, 2024 pm 10:28 PM

Der Aufstieg der künstlichen Intelligenz treibt die rasante Entwicklung der Softwareentwicklung voran. Diese leistungsstarke Technologie hat das Potenzial, die Art und Weise, wie wir Software erstellen, zu revolutionieren, mit weitreichenden Auswirkungen auf jeden Aspekt von Design, Entwicklung, Tests und Bereitstellung. Für Unternehmen, die in den Bereich der dynamischen Softwareentwicklung einsteigen möchten, bietet das Aufkommen der generativen künstlichen Intelligenz-Technologie beispiellose Entwicklungsmöglichkeiten. Durch die Integration dieser Spitzentechnologie in ihre Entwicklungsprozesse können Unternehmen die Produktionseffizienz erheblich steigern, die Markteinführungszeit von Produkten verkürzen und hochwertige Softwareprodukte auf den Markt bringen, die sich im hart umkämpften digitalen Markt abheben. Laut einem McKinsey-Bericht wird erwartet, dass der Markt für generative künstliche Intelligenz bis 2031 voraussichtlich 4,4 Billionen US-Dollar erreichen wird. Diese Prognose spiegelt nicht nur einen Trend wider, sondern zeigt auch die Technologie- und Geschäftslandschaft.

Wie hängen die Typen der Rückgabewerte von PHP-Funktionen mit der Interoperabilität von PHP-Erweiterungen zusammen? Wie hängen die Typen der Rückgabewerte von PHP-Funktionen mit der Interoperabilität von PHP-Erweiterungen zusammen? Apr 15, 2024 pm 09:06 PM

Rückgabewerttypen von PHP-Funktionen können als Typbeschreibungssyntax ausgedrückt werden, die den Rückgabewerttyp jeder Funktion klar angibt. Das Verständnis der Rückgabewerttypen ist entscheidend für die Erstellung von Erweiterungen, die mit der PHP-Kern-Engine kompatibel sind, um unerwartete Konvertierungen zu vermeiden, die Effizienz zu verbessern und die Lesbarkeit des Codes zu verbessern. Insbesondere können Erweiterungsfunktionen einen Rückgabewerttyp definieren, sodass die PHP-Engine die Codeausführung basierend auf diesem Typ optimieren und Entwicklern ermöglichen kann, den Rückgabewert explizit zu verarbeiten. In der Praxis können Erweiterungsfunktionen PHP-Objekte zurückgeben und PHP-Code kann die zurückgegebenen Ergebnisse entsprechend dem Rückgabewerttyp verarbeiten.

Anwendungen künstlicher Intelligenz in der Softwareentwicklung: Automatisierung und Optimierung Anwendungen künstlicher Intelligenz in der Softwareentwicklung: Automatisierung und Optimierung Sep 02, 2023 pm 01:53 PM

Als Spitzentechnologie zeigt Künstliche Intelligenz (KI) in verschiedenen Bereichen großes Potenzial. Auch im Bereich der Softwareentwicklung hat der Einsatz künstlicher Intelligenz große Aufmerksamkeit erregt. Von der Automatisierung von Aufgaben bis hin zur Codeoptimierung bietet KI Entwicklern viele innovative Möglichkeiten, die Effizienz, Qualität und Kreativität zu steigern. In diesem Artikel wird die Anwendung künstlicher Intelligenz in der Softwareentwicklung untersucht, wobei der Schwerpunkt auf der Entwicklung von Automatisierungs- und Optimierungsaufgaben liegt. 1. Codegenerierung Durch das Erlernen vorhandener Codebasen kann künstliche Intelligenz automatisch Codeausschnitte oder sogar komplette Module generieren. Dies ist für Entwickler sehr hilfreich, um schnell grundlegende Frameworks zu erstellen und so Zeit und Mühe zu sparen. Beispielsweise können einige KI-Tools Boilerplate-Code basierend auf Anforderungen generieren, sodass Entwickler schneller mit der Arbeit beginnen können2

Gründe und Lösungen, warum Laufwerk D im Win11-System nicht erweitert werden kann Gründe und Lösungen, warum Laufwerk D im Win11-System nicht erweitert werden kann Jan 08, 2024 pm 12:30 PM

Einige Benutzer haben das Gefühl, dass ihr Speicherplatz auf dem Laufwerk d nicht ausreicht, und möchten den Speicherplatz auf dem Laufwerk d erweitern. Während des Vorgangs stellen sie jedoch fest, dass ihr Win11D-Laufwerk nicht erweitert werden kann und das erweiterte Volume möglicherweise grau ist Nicht genügend Speicherplatz vorhanden. Werfen wir einen Blick auf die folgenden Lösungen. Warum die Festplatte win11d nicht erweitert werden kann: 1. Nicht genügend Speicherplatz 1. Um die Festplatte d zu erweitern, müssen Sie zunächst sicherstellen, dass auf Ihrer Festplatte „verfügbarer Speicherplatz“ vorhanden ist, wie in der Abbildung dargestellt. 2. Wenn kein solcher Platz vorhanden ist, gibt es natürlich keine Möglichkeit zur Erweiterung. 3. Wenn Sie das Laufwerk D zu diesem Zeitpunkt erweitern möchten, können Sie nach anderen Festplatten suchen, mit der rechten Maustaste klicken und „Volume komprimieren“ auswählen. 4. Geben Sie den Speicherplatz ein, den Sie erweitern möchten, um ihn zu komprimieren, und klicken Sie dann auf „OK“, um den zu erhalten verfügbarer Platz. 2. Die Festplatten liegen nicht nebeneinander. 1. Sie können eine Festplatte erweitern

Was soll ich tun, wenn die in der oberen rechten Ecke des Sogou-Browsers angezeigte Erweiterung fehlt? Was soll ich tun, wenn die in der oberen rechten Ecke des Sogou-Browsers angezeigte Erweiterung fehlt? Jan 31, 2024 pm 02:54 PM

Was soll ich tun, wenn die in der oberen rechten Ecke von Sogou Browser angezeigte Erweiterung fehlt? Wie kann ich sie anzeigen? In der oberen rechten Ecke des Sogou-Browsers befindet sich eine Erweiterungsleiste, die verschiedene Erweiterungen anzeigt, die Benutzer heruntergeladen und installiert haben. Aufgrund einiger unserer Vorgänge fehlt die Erweiterungsleiste. Wie bedienen wir es, damit es angezeigt wird! Der Redakteur unten hat die Lösungen zusammengestellt, was zu tun ist, wenn die in der oberen rechten Ecke des Sogou-Browsers angezeigte Erweiterung fehlt. Wenn nicht, folgen Sie mir und lesen Sie weiter! Was soll ich tun, wenn die in der oberen rechten Ecke des Sogou-Browsers angezeigte Erweiterung fehlt? 1. Öffnen Sie zunächst den Sogou-Browser. In der oberen rechten Ecke des Browsers wird ein Symbol „Menü anzeigen“ angezeigt Klicken Sie mit der Maus auf das Symbol. 2. Nach dem Klicken öffnet sich unten ein Menüfenster.

See all articles