第一步:首先將這個頁面執行一遍,然后再修改這個字段的值,然后再執行一遍
創新互聯-專業網站定制、快速模板網站建設、高性價比湘橋網站開發、企業建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式湘橋網站制作公司更省心,省錢,快速模板網站建設找我們,業務覆蓋湘橋地區。費用合理售后完善,10余年實體公司更值得信賴。
第二步:如果還是報錯,請檢查一下這個字段的檢索是不是約定了某些特定值
create database arron
go
use arron
go
-- createTable init Data
create table students (
name varchar(25),
class varchar(25),
grade int
)
insert into students values ('張三','語文',20)
insert into students values ('張三','數學',90)
insert into students values ('張三','英語',50)
insert into students values ('李四','語文',81)
insert into students values ('李四','數學',60)
insert into students values ('李四','英語',90)
-- solution1
select * from students
pivot(
max(grade)
FOR [class] IN ([語文],[數學],[英語])
) AS pvt
-- solution2 相當于自連接
select A.Name,A.grade as 語文,B.grade as 數學,C.grade as 英語
from students A,students B,students C
where A.Name=B.Name and B.Name=C.Name
and A.class='語文' and B.class='數學'
and C.class='英語'
-- solution3
select name,
max(case when s.class='語文' then s.grade end) as 語文,
max(case when s.class='數學' then s.grade end) as 數學,
max(case when s.class='英語' then s.grade end) as 英語
from students s group by name
--在有id 的情況下
create table students2 (
id int primary key identity(1,1),
name varchar(25),
class varchar(25),
grade int
)
insert into students2 values ('張三','語文',20)
insert into students2 values ('張三','數學',90)
insert into students2 values ('張三','英語',50)
insert into students2 values ('李四','語文',81)
insert into students2 values ('李四','數學',60)
insert into students2 values ('李四','英語',90)
-- 原先的solution1(有問題)
select * from students2
pivot(
max(grade)
FOR [class] IN ([語文],[數學],[英語])
) AS pvt
-- 原先的solution2 (ok)
select A.Name,A.grade as 語文,B.grade as 數學,C.grade as 英語
from students A,students2 B,students2 C
where A.Name=B.Name and B.Name=C.Name
and A.class='語文' and B.class='數學'
and C.class='英語'
-- 原先的solution3 (ok)
select name,
max(case when s.class='語文' then s.grade end) as 語文,
max(case when s.class='數學' then s.grade end) as 數學,
max(case when s.class='英語' then s.grade end) as 英語
from students s group by name
--unpivot 函數使用
create table test1(id int,name varchar(20), Q1 int, Q2 int, Q3 int, Q4 int)
insert into test1 values(1,'a',1000,2000,4000,5000)
insert into test1 values(2,'b',3000,3500,4200,5500)
--實現的sql
select * from test1
select id ,[name],[jidu],[xiaoshou] from test1
unpivot
(
xiaoshou for jidu in
([q1],[q2],[q3],[q4])
)
as f
--- 以下的sql 可以替換上面的sql
select id,[name],
jidu='Q1',
xiaoshou=(select Q1 from test1 where id=a.id)
from test1 as a
union
select id,[name],
jidu='Q2',
xiaoshou=(select Q2 from test1 where id=a.id)
from test1 as a
union
select id,[name],
jidu='Q3',
xiaoshou=(select Q3 from test1 where id=a.id)
from test1 as a
union
select id,[name],
jidu='Q4',
xiaoshou=(select Q4 from test1 where id=a.id)
from test1 as a
首先打開你的數據庫
use (數據庫名字)
然后執行sqlserver2005的修改語句
update (表名) set (列名)=(你要修改成的值) where (標識列名一般是第一列的列名)=(標識列的值)
不同的數據庫語法不同(SQLServer和Oracle為例),且復制包括目標表已存在和目標表不存在的情況,分別回答:SQLServer中,如果目標表存在:insert into 目標表 select * from 原表;SQLServer中,,如果目標表不存在:select * into 目標表 from 原表;Oracle中,如果目標表存在:insert into 目標表 select * from 原表;commit;Oracle中,如果目標表不存在:create table 目標表 as select * from 原表;
選中表 右鍵選擇“編輯前200行”,然后選擇左上角的sql圖標,然后在右側的SQL語句去掉 top 200 然后執行查詢 就可以編輯所有的行了,可以選擇自己需要寫SQL,然后查詢編輯。
第二種方法:可以在選擇編輯前200行后 再打開“顯示條件窗格” 配合條件 篩選需要的數據,這樣不需要手動寫SQL語句了。而是SQLSERVER來自動完成。
可以根據個人喜好來使用。
工具/材料:以ManagementStudio為例。
1、首先,點擊桌面上的“ManagementStudio”圖標。
2、然后在界面中,選擇“Datatabletomodifyfieldproperties”。
3、之后,右鍵單擊界面中的“設計”選項。
4、然后在界面中,選擇要修改的“字段屬性”選項。
5、然后,在接口中,修改選項“intproperty”。
6、之后,點擊界面頂部的“保存”按鈕。
7、最后,在這個接口中,field屬性成功地更改為int。