Запитання з тегом «ddl»

Мова визначення даних; визначення структур бази даних, але не їх зміст.

2
Найкращий спосіб заповнити новий стовпчик у великій таблиці?
У нас в Постгресі розміщена таблиця розміром 2,2 ГБ з 7 801 611 рядками. Ми додаємо до нього стовпчик uuid / guide, і мені цікаво, який найкращий спосіб заповнити цей стовпець (оскільки ми хочемо додати NOT NULLдо нього обмеження). Якщо я правильно розумію Postgres, оновлення технічно є видаленням та вставкою, …

2
Як видалити всі обмеження з усіх таблиць?
Я хочу скинути всі обмеження за замовчуванням, перевірити обмеження, унікальні обмеження, первинні та зовнішні ключі з усіх таблиць бази даних SQL Server. Я знаю, як отримати всі імена обмежень sys.objects, але як я заповнюю ALTER TABLEчастину?


2
Транзакційний DDL робочий процес для MySQL
Я був трохи здивований, виявивши , що заяви DDL ( alter table, і create indexт.д.) неявно зробити поточну транзакцію в MySQL. Починаючи з MS SQL Server, можливість змінювати базу даних в транзакції локально (потім відкотився) була важливою частиною мого робочого процесу. Для безперервної інтеграції відкат використовувався, якщо міграція з будь-якої …

3
Обмеження в застосуванні "принаймні одного" або "точно одного" в базі даних
Скажімо, у нас є користувачі, і кожен користувач може мати кілька адрес електронної пошти CREATE TABLE emails ( user_id integer, email_address text, is_active boolean ) Деякі зразки рядків user_id | email_address | is_active 1 | foo@bar.com | t 1 | baz@bar.com | f 1 | bar@foo.com | f 2 | …

4
Чому деякі СУБД не дозволяють відкати для певних операторів DDL?
Нещодавно я з'ясував, що MySQL не підтримує відкат DDL, наприклад, "alter table" ... Використовуючи PostgreSQL, це вразило мене як дивне, але мій друг сказав мені, що навіть Oracle цього не дозволяє. Чи є технічні причини, що не підтримують його? Це просто "нецікава" функція для них? Редагувати: щойно знайшли це порівняння …

1
Як використовувати транзакції з DDL SQL Server?
У мене є таблиця входу, в яку всі вставки виконуються за єдиною збереженою процедурою. CREATE TABLE dbo.LogTable( LogRefnr int IDENTITY(1, 1) NOT NULL, LogQuery varchar(255) NOT NULL, LogTime datetime NOT NULL, logQueryDuration int NULL, LogSessionID int NULL, CONSTRAINT PK_Log PRIMARY KEY CLUSTERED (LogRefnr) ) go Create procedure DBO.LogInsert ( @Query …

6
Запит для порівняння структури двох таблиць у MySQL
Для автоматизації процесу резервного копіювання однієї з моїх баз даних MySQL я хотів би порівняти структуру двох таблиць (поточна версія проти старої версії). Чи можете ви придумати запит, який може порівняти дві таблиці? Ось кілька прикладних таблиць, з якими можна порівняти. CREATE TABLE product_today ( pname VARCHAR(150), price int, PRIMARY …

1
Як визначити складання таблиці в PostgreSQL?
Я хочу скриптувати перевірку порівнянь, які використовуються на моїх таблицях у PostgreSQL, але googling Postgresql detect collationдля мене не працює добре, і документація не робить це простим пошуком. Хто-небудь може сказати мені, як я би це перевірив?

2
Відключення перевірки схеми щодо функцій / створення збережених процедур
Я намагаюся автоматизувати процес, який виконує зміни в базі даних SQL Server 2008 R2. Процес, який я ввожу, замінює і відтворює мої збережені процедури та функції, а також запускає скрипти для зміни таблиць / стовпців / даних. На жаль, один із сценаріїв вимагає встановити одну з функцій першою. Але я …

3
Чому я коли-небудь віддаю перевагу ALGORITHM = КОПІЯ перед ALGORITHM = INPLACE?
Оскільки MySQL 5.6 представив онлайн-DDL, ALTER TABLEкоманда може необов'язково мати ALGORITHM=INPLACEабо ALGORITHM=COPYвказати. Огляд онлайн DDL зазначає , що, за замовчуванням, INPLACEвикористовується всюди , де це можливо, і передбачає (ніколи не цілком виклавши його) , що INPLACEалгоритм дешевше , ніж COPYодин. Отже, яку причину мені колись доведеться вказати ALGORITHM=COPYу ALTER TABLEзаяві?

1
Чому додається стовпець NOT NULL з обмеженням за замовчуванням миттєвим?
CREATE TABLE TestTab (ID INT IDENTITY(1,1), st nvarchar(100)) INSERT INTO TestTab (st) values ('a') INSERT INTO TestTab (st) values ('b') INSERT INTO TestTab (st) values ('c') INSERT INTO TestTab (st) values ('d') INSERT INTO TestTab (st) values ('e') INSERT INTO TestTab (st) SELECT TOP 10000 st from testtab GO 30 …

3
Скинути значення IDENTITY
У мене є таблиця зі стовпцем Ідентичність. Під час розвитку я періодично видаляю рядки і додаю їх знову. Але значення IDENTITY завжди збільшувались і не починалися з 1, коли я знову додавав їх. Тепер мій ідентифікатор йде з 68 -> 92, і це руйнує мій код. Як скинути значення IDENTITY?

2
Чому обрізається DDL?
У мене є питання про інтерв'ю, яке було задано під час мого інтерв'ю. Я відповів на запитання, але інтерв'юер не був так переконаний моєю відповіддю. Отже, будь-хто, будь ласка, виправте мене з моїм розумінням? З. Чому Truncate - це DDL, де видалити - це DML? Обидва виконують майже однакову роботу …
15 oracle  delete  ddl  truncate 

3
Автоматично виписуйте Oracle DDL
Oracle SQL Developer здатний експортувати DDL через Tools -> Database Export...Це працює дуже добре, але вимагає вручного втручання. Я знаю DBMS_METADATA.get_ddl(), але виявив, що експорт не є ідеальним. Я зіткнувся з проблемами, де експортований DBMS_METADATADDL був непридатним для використання, не попередньо виправляючи такі проблеми, як перерви в середині ключового слова, …

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.