Php 我对';更新';MySQL中的命令
我对sql中的“更新”有疑问; 我有这些数据:Php 我对';更新';MySQL中的命令,php,mysql,Php,Mysql,我对sql中的“更新”有疑问; 我有这些数据: create database execicios default character set utf8 default collate utf8_general_ci; create table if not exists contas_a_receber( Nome char(40), Numero int not null, Valor decimal(10,2), Vencimento date, Banco char(10)
create database execicios
default character set utf8
default collate utf8_general_ci;
create table if not exists contas_a_receber(
Nome char(40),
Numero int not null,
Valor decimal(10,2),
Vencimento date,
Banco char(10),
primary key (Numero)
)default charset = utf8;
insert into contas_a_receber values
('ABC PAPELARIA', '100100', '5000.00', '2017-01-20', 'ITAU'),
('LIVRARIA FERNANDES', 100110, 2500.00, '2017-01-22', 'ITAU'),
('LIVRARIA FERNANDES', '100120', '1500.00', '2016-10-15', 'BRADESCO'),
('ABC PAPELARIA', '100130', '8000.00', '2016-10-15', 'SANTANDER'),
('LER E SABER', '200120', '10500.00', '2018-04-26', 'BANCO DO BRASIL'),
('LIVROS E CIA', '200125', '2000.00', '2018-04-26', 'BANCO DO BRASIL'),
('LER E SABER', '200130', '11000.00', '2018-09-26', 'ITAU'),
('PAPELARIA SILVA', '250350', '1500.00', '2018-01-26', 'BRADESCO'),
('LIVROS MM', '250360', '500.00', '2018-12-18', 'SANTANDER'),
('LIVROS MM', '250370', '3400.00', '2018-04-26', 'SANTANDER'),
('PAPELARIA SILVA', '250380', '3500.00', '2018-04-26', 'BANCO DO BRASIL'),
('LIVROS E CIA', '453360', '1500.00', '2018-06-15', 'ITAU'),
('LIVROS MM', '453365', '5400.00', '2018-06-15', 'BRADESCO'),
('PAPELARIA SILVA', '453370', '2350.00', '2017-12-27', 'ITAU'),
('LIVROS E CIA', '453380', '1550.00', '2017-12-27', 'BANCO DO BRASIL'),
('ABC PAPELARIA', '980130', '4000.00', '2016-12-11', 'ITAU'),
('LIVRARIA FERNANDES', '770710', '2500.00', '2016-11-15', 'SANTANDER'),
('ABC PAPELARIA', '985001', '3000.00', '2016-09-11', 'ITAU'),
('PAPEL E AFINS', '985002', '2500.00', '2016-03-12', 'SANTANDER'),
('LER E SABER', '888132', '2500.00', '2017-03-05', 'ITAU');
我想把“桑坦德”改成“巴西银行”
我尝试使用命令更新,但不起作用
我使用的命令是:
set Banco = 'BANCO DO BRASIL'
where Banco like 'SANTANDER';
有人能帮我吗?使用
更新contas_a_receber set Banco='Banco DO BRASIL',其中Banco喜欢'SANTANDER%'代码>
Banco数据类型列是char(10)而不是varchar(10),这意味着数据库将填充空白直到有10个字符,如“SANTANDER”
还有一件事,巴西银行有超过10个字符,所以它将被裁剪或失败。
您需要将其更改为允许超过10个字符:
ALTER TABLE contas_a_receber MODIFY Banco varchar(50)
但请确保它不会影响您的系统。您的update命令语法错误。您的Banco列是char(10)
,并且Banco DO BRASIL
大于10个字符…无法复制。(Banco
定义调整)。