我正在尝试确定 MySQL 更新索引的情况。假设我有下表:
CREATE TABLE MyTable (
ID INT NOT NULL AUTO_INCREMENT,
MyIndexedColumn VARCHAR NOT NULL,
MyNonIndexedColumn VARCHAR,
PRIMARY KEY (ID),
INDEX MyNewIndex(MyIndexedColumn)
)
然后我用 sql 查询插入一行:
INSERT INTO MyTable (MyIndexedColumn, MyNonIndexedColumn)
VALUES ('MyTestValue', 'MyTestValue');
现在,如果我运行以下语句,它将更改索引列的值
UPDATE MyTable
SET MyIndexedColumn = 'MyNewIndexValue',
MyNonIndexedColumn = 'somenewvalu New Value'
WHERE ID = 1;
我一直有这种查询。很多写入(插入/更新)和很少的读取
- 这会产生性能问题吗?
- 这会破坏我的索引并使它们无法使用吗?
- 我怎样才能摆脱这个问题?
另外,Oracle会更好还是Mysql可以处理这种数据?