Sql Server数据库中的更新表名、列名、列值

更新表名:execsp_rename'旧表名','新表名'

更新列名: execsp_rename'表名.[字段原名]','字段新名','column'

execsp_rename'表名.[旧列名]','新列名','column'

更新某一行中的一列

我们为lastname"Wilson"的人添加firstname

UPDATEPersonSETFirstName='Fred'WHERELastName='Wilson'

更新某一行中的若干

我们会修改地址(address),并添加城市名称(city):

UPDATE Person SET Address = 'Zhongshan 23', City = 'Nanjing'
WHERE LastName = 'Wilson'
<wbr></wbr>
你可以使用 SQL Server 的系统表来获取表的列名。以下是一个 C++ 示例代码,用于获取表名为 "myTable" 的列名: ```c++ #include <iostream> #include <sql.h> #include <sqlext.h> #include <string> using namespace std; int main() { // Declare variables SQLHANDLE sqlEnvHandle = NULL; SQLHANDLE sqlConnHandle = NULL; SQLHANDLE sqlStmtHandle = NULL; SQLRETURN retCode = 0; string tableName = "myTable"; // Allocate environment handle retCode = SQLAllocHandle(SQL_HANDLE_ENV, SQL_NULL_HANDLE, &sqlEnvHandle); // Set the ODBC version environment attribute retCode = SQLSetEnvAttr(sqlEnvHandle, SQL_ATTR_ODBC_VERSION, (SQLPOINTER)SQL_OV_ODBC3, 0); // Allocate connection handle retCode = SQLAllocHandle(SQL_HANDLE_DBC, sqlEnvHandle, &sqlConnHandle); // Connect to the data source retCode = SQLConnect(sqlConnHandle, (SQLCHAR*)"YOUR_DSN_NAME", SQL_NTS, (SQLCHAR*)"YOUR_USERNAME", SQL_NTS, (SQLCHAR*)"YOUR_PASSWORD", SQL_NTS); // Allocate statement handle retCode = SQLAllocHandle(SQL_HANDLE_STMT, sqlConnHandle, &sqlStmtHandle); // Get column names string query = "SELECT COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = '" + tableName + "'"; retCode = SQLExecDirect(sqlStmtHandle, (SQLCHAR*)query.c_str(), SQL_NTS); // Fetch column names SQLCHAR colName[256]; while (SQLFetch(sqlStmtHandle) == SQL_SUCCESS) { SQLGetData(sqlStmtHandle, 1, SQL_C_CHAR, colName, 256, NULL); cout << colName << endl; } // Clean up SQLFreeHandle(SQL_HANDLE_STMT, sqlStmtHandle); SQLDisconnect(sqlConnHandle); SQLFreeHandle(SQL_HANDLE_DBC, sqlConnHandle); SQLFreeHandle(SQL_HANDLE_ENV, sqlEnvHandle); return 0; } ``` 请将 "YOUR_DSN_NAME"、"YOUR_USERNAME" 和 "YOUR_PASSWORD" 替换为你的 SQL Server 连接信息。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值