VB中如何实现一个按钮既控制数据库数据的添加,又实现数据库数据的更改

VB中如何实现一个按钮既控制数据库数据的添加,又实现数据库数据的更改,第1张

通过定义一个全局变量(如xACTION)可以实现。

当点击添加按钮时:xACTION=1,

当点击重命名按时:xACTION=2,

最后当点击保存按钮时,对xACTION进行判断:

假如xACTION=1时执行插入数据的SQL语句,

假如xACTION=2时执行更新数据的SQL语句。

希望对你有所帮助。

--修改数据库文件增量

USE master

GO

Alter DATABASE Test

MODIFY FILE

(NAME = test,

-- SIZE = 1000MB,

--MAXSIZE = 10000MB,

FILEGROWTH = 100MB)

GO

--修改数据库日志文件增量

USE master

GO

Alter DATABASE Test

MODIFY FILE

(NAME = test_log,

-- SIZE = 1000MB,

--MAXSIZE = 10000MB,

FILEGROWTH = 100MB)

GO

参考以下内容:

[c-sharp]view plaincopyprint

/

一般的虚拟主机上,附送的sql server数据库都是限制了大小,比如100M。当你的数据库空间达到了指定的100M时,插入新数据就会报错:

未能为数据库 'a1116173958' 中的对象 'fc_Info' 分配空间,因为文件组 'PRIMARY' 已满

其实,有些主机商的数据库大小是可以自己修改的。当然,修改之前你需要知道数据库名(这里是逻辑名称),一般的这个名称是很容易知道的,就是数据库名称。

你可以尝试下在自己编写的程序中,或空间的管理后台中等可以执行sql语句的地方试一下下面的语句:

Alter DATABASE 数据库名

modify FILE

( NAME = 数据库名,

MAXSIZE = 200MB,

FILEGROWTH = 5MB)

如果执行成功,那么恭喜你了。

========我是分割线============================================

下面是Alter DATABASE的一些参考资料,详细可以查看sql server帮助。

在数据库中添加或删除文件和文件组。也可用于更改文件和文件组的属性,例如更改文件的名称和大小。Alter DATABASE 提供了更改数据库名称、文件组名称以及数据文件和日志文件的逻辑名称的能力。

Alter DATABASE 支持数据库选项的设置。在早期版本的 Microsoft® SQL Server™ 中,这些选项可以通过 sp_dboption 存储过程来设置。在此次发布的版本中,SQL Server 继续支持 sp_dboption存储过程,但在未来版本中可能不再支持。可使用 DATABASEPROPERTYEX 函数检索数据库选项的当前设置。

语法

Alter DATABASE database

{ ADD FILE < filespec > [ ,n ] [ TO FILEGROUP filegroup_name ]

| ADD LOG FILE < filespec > [ ,n ]

| REMOVE FILE logical_file_name

| ADD FILEGROUP filegroup_name

| REMOVE FILEGROUP filegroup_name

| MODIFY FILE < filespec >

| MODIFY NAME = new_dbname

| MODIFY FILEGROUP filegroup_name {filegroup_property | NAME = new_filegroup_name }

| SET < optionspec > [ ,n ] [ WITH < termination > ]

| COLLATE < collation_name >

}

< filespec > ::=

( NAME = logical_file_name

[ , NEWNAME = new_logical_name ]

[ , FILENAME = 'os_file_name' ]

[ , SIZE = size ]

[ , MAXSIZE = { max_size | UNLIMITED } ]

[ , FILEGROWTH = growth_increment ] )

< optionspec > ::=

<state_option>

| < cursor_option >

| < auto_option >

| < sql_option >

| < recovery_option >

< state_option > ::=

{ SINGLE_USER | RESTRICTED_USER | MULTI_USER }

| { OFFLINE | ONLINE }

| { READ_ONLY | READ_WRITE }

< termination > ::=

ROLLBACK AFTER integer [ SECONDS ]

| ROLLBACK IMMEDIATE

| NO_WAIT

< cursor_option > ::=

CURSOR_CLOSE_ON_COMMIT { ON | OFF }

| CURSOR_DEFAULT { LOCAL | GLOBAL }

< auto_option > ::=

AUTO_CLOSE { ON | OFF }

| AUTO_Create_STATISTICS { ON | OFF }

| AUTO_SHRINK { ON | OFF }

| AUTO_Update_STATISTICS { ON | OFF }

< sql_option > ::=

ANSI_NULL_DEFAULT { ON | OFF }

| ANSI_NULLS { ON | OFF }

| ANSI_PADDING { ON | OFF }

| ANSI_WARNINGS { ON | OFF }

| ARITHABORT { ON | OFF }

| CONCAT_NULL_YIELDS_NULL { ON | OFF }

| NUMERIC_ROUNDABORT { ON | OFF }

| QUOTED_IDENTIFIER { ON | OFF }

| RECURSIVE_TRIGGERS { ON | OFF }

< recovery_option > ::=

RECOVERY { FULL | BULK_LOGGED | SIMPLE }

| TORN_PAGE_DETECTION { ON | OFF }

用alter database语句修改数据库

--1将名为"例二数据库"的数据库改名为"例七数据库"

显示代码打印

alter database 例二数据库

modify name = 例七数据库

显示代码打印1 exec sp_renamedb '例二数据库','例七数据库'

--2为"例六数据库"增加一个数据文件

显示代码打印

alter database 例六数据库

add file (

name=增加的数据文件,

filename='c:\dbtest\例六数据库增加的数据文件ndf'

)

--3为"例六数据库"增加一个日志文件

显示代码打印

alter database 例六数据库

add log file (

name=例六增加的日志文件,

filename='c:\dbtest\例六增加的日志文件ldf',

size=3MB,

maxsize=50MB,

filegrowth=10%

)

--4将"例六数据库"名为"增加的数据文件"的数据库文件改名

显示代码打印

alter database 例六数据库

modify file (

name=增加的数据文件,

newname=例六数据文件,

filename='c:\dbtest\例六数据文件ndf'

)

--5修改"例六数据库"的排序规则

显示代码打印

alter database 例六数据库

collate Chinese_PRC_CI_AS_KS

--6在"例六数据库"里删除一个数据文件

显示代码打印

alter database 例六数据库

remove file 例六数据文件

--7在"例六数据库"里添加一个文件组

显示代码打印

alter database 例六数据库

add filegroup 例十三文件组

--8在"例六数据库"里为一个文件组改名

显示代码打印

alter database 例六数据库

modify filegroup 例十三文件组

name=例十四文件组

--9在"例六数据库"里添加一个数据文件到一个文件组,并将该文件祖设为默认文件组。

显示代码打印

--alter database一次只能修改数据库的一个属性

alter database 例六数据库

add file (

name=例十五数据文件,

filename='c:\dbtest\例十五数据文件ndf'

)

to filegroup 例十四文件组

go

alter database 例六数据库

modify filegroup 例十四文件组 default

go

--10在"例六数据库"里删除"例十四文件组"。

显示代码打印

alter database 例六数据库

modify filegroup [primary] default

--将primary文件组设为默认文件组

go

alter database 例六数据库

remove file 例十五数据文件

--删除"例十四文件组"中包含的"例十五数据文件"

go

alter database 例六数据库

remove filegroup 例十四文件组

--删除"例十四文件组"

go

--11将"例六数据库"里一个文件组设为只读的。

显示代码打印

alter database 例六数据库

add filegroup 例十七文件组

--先添加一个文件组,因为primary文件组不能设为只读

go

alter database 例六数据库

add file (name=例十七数据文件,

filename='c:\dbtest\例十七数据文件ndf')

to filegroup 例十七文件组

--添加一个文件到文件组中,因为空文件组不能设为只读

go

alter database 例六数据库

modify filegroup 例十七文件组 read_only

--将文件组设为只读

go

--12将"例六数据库"设为只有一个用户可访问

显示代码打印

alter database 例六数据库

set single_user

--13设置"例六数据库"可自动收缩

显示代码打印

alter database 例六数据库

set auto_shrink on

举例:学生成绩数据库

1创建一个数据库:

CREATE DATABASE XSCJ

ON

(NAME='XSCJ_DATA',

FILENAME='D:\Program Files\Microsoft SQL Server\MSSQL\Data\XSCJ_DATAMDF',

SIZE=5MB,

MAXSIZE=50MB,

FILEGROWTH=10%

)

LOG ON

(NAME='XSCJ_LOG',

FILENAME='D:\Program Files\Microsoft SQL Server\MSSQL\Data\XSCJ_LOGLOG',

SIZE=2MB,

MAXSIZE=5MB,

FILEGROWTH=1MB

)

GO

2创建学生信息表:

CREATE TABLE XS

(学号 CHAR(6) PRIMARY KEY,

姓名 CHAR(6) NOT NULL,

专业名 CHAR(10) NULL,

性别 BIT NOT NULL,

出生时间 DATETIME NOT NULL,

总学分 TINYINT NOT NULL,

备注 TEXT NULL

)

GO

3向XS表中插入数据:

INSERT INTO XS

VALUES('001106','李方方','计算机',1,'1980-11-20',50,NULL)

GO

INSERT INTO XS

VALUES('001107','李明','计算机',1,'1980-05-01',54,'提前修完《数据结构》,并获得学分')

GO

INSERT INTO XS

VALUES('001108','林一帆','计算机',1,'1979-08-05',52,'已提前修完1门课')

GO

4查询XS表:

SELECT

FROM XS

5修改学号为001106同学的专业:

UPDATE XS

SET 专业名='通信工程'

WHERE 学号='001106'

GO

6删除李方方同学的信息:

DELETE FROM XS

WHERE 姓名='李方方'

GO

给你一个创建数据库的例子;

窗体上加3个按钮分别执行,创建数据库与表,添加记录,修改记录。

'首先通过菜单工程--引用,勾选 Microsoft DAO 36 Object Library

'其中版本号36,看你计算机具体情况而选择,当然版本越高越新。

Option Explicit

Private Sub Command1_Click()

Dim MyWs As Workspace '工作区

Dim MyDB As Database '数据库对象

Dim myTBL As TableDef '数据表对象

Dim MyFid(9) As Field '字段对象

Dim i As Integer

If Dir(AppPath & "\实验数据库mdb") <> "" Then Kill AppPath & "\实验数据库mdb"

'创建工作区

Set MyWs = DBEngineWorkspaces(0)

'创建数据库文件

'Set MyDB = MyWsWorkspaces(0)CreateDatabase(AppPath & "\F实验数据库mdb")

Set MyDB = MyWsCreateDatabase(AppPath & "\实验数据库mdb", dbLangGeneral, dbEncrypt)

'创建表

Set myTBL = MyDBCreateTableDef("学生数据表")

'创建字段

Set MyFid(1) = myTBLCreateField("学号", dbText, 4)

Set MyFid(2) = myTBLCreateField("姓名", dbText, 10)

Set MyFid(3) = myTBLCreateField("性别", dbText, 2)

Set MyFid(4) = myTBLCreateField("备注", dbText, 4)

Set MyFid(5) = myTBLCreateField("籍贯", dbText, 10)

Set MyFid(6) = myTBLCreateField("出生年月", dbDate, 8)

Set MyFid(7) = myTBLCreateField("家庭住址", dbText, 40)

Set MyFid(8) = myTBLCreateField("联系电话", dbText, 50)

Set MyFid(9) = myTBLCreateField("户籍地址", dbText, 40)

'将字段加入到Field集合

For i = 1 To 9

myTBLFieldsAppend MyFid(i)

Next i

'将表加入到数据库中

MyDBTableDefsAppend myTBL

End Sub

Private Sub Command2_Click()

Dim MyWs As Workspace '工作区

Dim MyDB As Database '数据库对象

Dim Rs As Recordset '记录集对象

'创建工作区

Set MyWs = DBEngineWorkspaces(0)

'创建数据库文件

'Set MyDB = MyWsWorkspaces(0)CreateDatabase(AppPath & "\F实验数据库mdb")

Set MyDB = MyWsOpenDatabase(AppPath & "\实验数据库mdb")

'返回记录集

Set Rs = MyDBOpenRecordset("Select From 学生数据表")

RsAddNew

RsFields("学号") = "101"

RsFields("姓名") = "张老三"

RsFields("性别") = "男"

RsFields("备注") = "在籍"

RsFields("籍贯") = "江苏"

RsFields("出生年月") = #11/16/1992#

RsFields("家庭住址") = "长江路1000号2001室"

RsFields("联系电话") = "12345678"

RsFields("户籍地址") = "长江路1000号2001室"

RsUpdate

End Sub

Private Sub Command3_Click()

Dim MyWs As Workspace '工作区

Dim MyDB As Database '数据库对象

Dim Rs As Recordset '记录集对象

'创建工作区

Set MyWs = DBEngineWorkspaces(0)

'创建数据库文件

'Set MyDB = MyWsWorkspaces(0)CreateDatabase(AppPath & "\F实验数据库mdb")

Set MyDB = MyWsOpenDatabase(AppPath & "\实验数据库mdb")

'返回记录集

Set Rs = MyDBOpenRecordset("Select From 学生数据表")

'定位到要修改的记录

RsFindFirst "学号='101'"

If RsNoMatch Then

'没有找到要找的记录

MsgBox ("不存在要找的记录:")

Else

'找到要找的记录,进行修改某一个或几个字段

RsEdit

RsFields("籍贯") = "浙江"

RsFields("出生年月") = #1/28/1991#

RsUpdate

MsgBox ("修改成功!")

End If

End Sub

以上就是关于VB中如何实现一个按钮既控制数据库数据的添加,又实现数据库数据的更改全部的内容,包括:VB中如何实现一个按钮既控制数据库数据的添加,又实现数据库数据的更改、数据库创建后怎样修改数据库数据文件和日志文件分配的空间大小、MySQL中修改数据库 ALTER DATABASE 语法的使用等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9309729.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-27
下一篇 2023-04-27

发表评论

登录后才能评论

评论列表(0条)

保存