|
|
|
CREATE OR ALTER PROCEDURE... а для других объктов?
|
|||
|---|---|---|---|
|
#18+
CREATE OR ALTER PROCEDURE... А как можно подобное провернуть с таблицами, тригерами и т.д. при выполнении SQL скрипта? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.08.2004, 14:20:41 |
|
||
|
CREATE OR ALTER PROCEDURE... а для других объктов?
|
|||
|---|---|---|---|
|
#18+
Конечно можно ... Best regards, Dnico. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.08.2004, 14:25:03 |
|
||
|
CREATE OR ALTER PROCEDURE... а для других объктов?
|
|||
|---|---|---|---|
|
#18+
вопрос в том, как? Для таблиц именно эта конструкция не подходит. А нужно проверить наличие таблицы и изменить или зоздать ее. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.08.2004, 14:27:27 |
|
||
|
CREATE OR ALTER PROCEDURE... а для других объктов?
|
|||
|---|---|---|---|
|
#18+
авторALTER TABLEChanges a table by adding, dropping, or modifying columns or integrity constraints. Available in SQL, DSQL, and isql. ALTER TABLE table <operation> [, <operation> …]; <operation> = {ADD <col_def> | ADD <tconstraint> | ALTER [COLUMN] column_name <alt_col_clause> | DROP col | DROP CONSTRAINT constraint} <alt_col_clause> = {TO new_col_name | TYPE new_col_datatype | POSITION new_col_position} <col_def> = col {<datatype> | COMPUTED [BY] (<expr>) | domain} [DEFAULT {literal | NULL | USER}] [NOT NULL] [<col_constraint>] [COLLATE collation] <datatype> = {SMALLINT | INTEGER | FLOAT | DOUBLE PRECISION}[<array_dim>] | (DATE | TIME | TIMESTAMP} [<array_dim>] | {DECIMAL | NUMERIC} [(precision [, scale])] [<array_dim>] | {CHAR | CHARACTER | CHARACTER VARYING | VARCHAR} [(int)] [<array_dim>] [CHARACTER SET charname] | {NCHAR | NATIONAL CHARACTER | NATIONAL CHAR} [VARYING] [(int)] [<array_dim>] | BLOB [SUB_TYPE {int | subtype_name}] [SEGMENT SIZE int] [CHARACTER SET charname] | BLOB [(seglen [, subtype])]<array_dim> = [[x:]y [, [x:]y …]] <expr> = A valid SQL expression that results in a single value. <col_constraint> = [CONSTRAINT constraint] { UNIQUE | PRIMARY KEY | REFERENCES other_table [(other_col [, other_col …])] [ON DELETE {NO ACTION|CASCADE|SET DEFAULT|SET NULL}] [ON UPDATE {NO ACTION|CASCADE|SET DEFAULT|SET NULL}] | CHECK (<search_condition>)} <tconstraint> = [CONSTRAINT constraint] {{PRIMARY KEY | UNIQUE} (col [, col …]) | FOREIGN KEY (col [, col …]) REFERENCES other_table [ON DELETE {NO ACTION|CASCADE|SET DEFAULT|SET NULL}] [ON UPDATE {NO ACTION|CASCADE|SET DEFAULT|SET NULL}] | CHECK (<search_condition>)} <search_condition> = <val> <operator> {<val> | (<select_one>)} | <val> [NOT] BETWEEN <val> AND <val> | <val> [NOT] LIKE <val> [ESCAPE <val>] | <val> [NOT] IN (<val> [, <val> …] | <select_list>) | <val> IS [NOT] NULL | <val> {>= | <=} | <val> [NOT] {= | < | >} | {ALL | SOME | ANY} (<select_list>) | EXISTS (<select_expr>) | SINGULAR (<select_expr>) | <val> [NOT] CONTAINING <val> | <val> [NOT] STARTING [WITH] <val> | (<search_condition>) | NOT <search_condition> | <search_condition> OR <search_condition> | <search_condition> AND <search_condition> <val> = { col [<array_dim>] | :variable | <constant> | <expr> | <function> | udf ([<val> [, <val> …]]) | NULL | USER | RDB$DB_KEY | ? } [COLLATE collation] <constant> = num | 'string' | charsetname 'string' <function> = COUNT (* | [ALL] <val> | DISTINCT <val>) | SUM ([ALL] <val> | DISTINCT <val>) | AVG ([ALL] <val> | DISTINCT <val>) | MAX ([ALL] <val> | DISTINCT <val>) | MIN ([ALL] <val> | DISTINCT <val>) | CAST (<val> AS <datatype>) | UPPER (<val>) | GEN_ID (generator, <val>) <operator> = {= | < | > | <= | >= | !< | !> | <> | !=} <select_one> = SELECT on a single column; returns exactly one value. <select_list> = SELECT on a single column; returns zero or more values. <select_expr> = SELECT on a list of values; returns zero or more values. Best regards, Dnico. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.08.2004, 14:28:23 |
|
||
|
CREATE OR ALTER PROCEDURE... а для других объктов?
|
|||
|---|---|---|---|
|
#18+
...table by adding, dropping, or modifying columns... И это все для существующей таблицы! А если она (таблица) создается впервые.... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.08.2004, 14:34:00 |
|
||
|
CREATE OR ALTER PROCEDURE... а для других объктов?
|
|||
|---|---|---|---|
|
#18+
Так тогда CREATE TABLE ... Best regards, Dnico. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.08.2004, 14:43:04 |
|
||
|
CREATE OR ALTER PROCEDURE... а для других объктов?
|
|||
|---|---|---|---|
|
#18+
Ну спасибо! а тоя и не знал.... я имел ввиду что-то типа if exists и т.д. и т.п. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.08.2004, 14:47:00 |
|
||
|
CREATE OR ALTER PROCEDURE... а для других объктов?
|
|||
|---|---|---|---|
|
#18+
Так для таких целей используются системные таблицы. Там есть все про таблицы и поля ... Best regards, Dnico. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.08.2004, 14:48:48 |
|
||
|
CREATE OR ALTER PROCEDURE... а для других объктов?
|
|||
|---|---|---|---|
|
#18+
В файле описание системных таблиц ... Best regards, Dnico. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.08.2004, 14:53:48 |
|
||
|
CREATE OR ALTER PROCEDURE... а для других объктов?
|
|||
|---|---|---|---|
|
#18+
И про это слышали :) нужна разборка в скрипте создания/изменения базы, выполняемая скажем в консоли... Проще всего, конечно же DROP TABLE blabla CREATE TABLE blabla и периодически сваливаться на DROP`е если таблицы нет.... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.08.2004, 14:54:14 |
|
||
|
CREATE OR ALTER PROCEDURE... а для других объктов?
|
|||
|---|---|---|---|
|
#18+
Только через клиента ... есть такая программка, которая генерит скрипт обновления БД. IBCompare . Best regards, Dnico. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.08.2004, 14:57:18 |
|
||
|
CREATE OR ALTER PROCEDURE... а для других объктов?
|
|||
|---|---|---|---|
|
#18+
Вот пример из MS SQL: /****** Object: Table [dbo].[CACHE_PARAM] Script Date: 13.08.2004 14:54:29 ******/ if exists (select * from dbo.sysobjects where id = object_id(N'[CACHE_PARAM]') and OBJECTPROPERTY(id, N'IsUserTable') = 1) drop table [CACHE_PARAM] GO CREATE TABLE [CACHE_PARAM] ( [ID_LICH] [int] NOT NULL , [ID_PARAM] [int] NOT NULL , [P_TYPE] [int] NOT NULL , [VAL] [numeric](18, 7) NOT NULL ) ON [PRIMARY] GO А в берде это как реализовать? вот в чем вопрос! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.08.2004, 14:59:04 |
|
||
|
CREATE OR ALTER PROCEDURE... а для других объктов?
|
|||
|---|---|---|---|
|
#18+
Нет, такого я не видел. Может в новой версии это и сделают. Best regards, Dnico. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.08.2004, 15:05:04 |
|
||
|
CREATE OR ALTER PROCEDURE... а для других объктов?
|
|||
|---|---|---|---|
|
#18+
А жаль.... :( Спасибо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.08.2004, 15:07:01 |
|
||
|
CREATE OR ALTER PROCEDURE... а для других объктов?
|
|||
|---|---|---|---|
|
#18+
А что за имя и версия сервера? Выдержка из док-ции по FB1.5: (1.0) RECREATE TABLE This new DDL command lets you create a new structure for an existing table without needing to drop the old table first. The syntax is identical to CREATE TABLE. Observe that RECREATE TABLE does not preserve the data in the old table. Available in SQL and DSQL. Причем еще из 1.0 пошло ;-) ------------------------ С уважением, Denis Uskov ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.08.2004, 15:20:14 |
|
||
|
CREATE OR ALTER PROCEDURE... а для других объктов?
|
|||
|---|---|---|---|
|
#18+
Denis Uskov - Упс ... Я же говорил что могут с делать в новой версии ... Best regards, Dnico. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.08.2004, 15:24:12 |
|
||
|
CREATE OR ALTER PROCEDURE... а для других объктов?
|
|||
|---|---|---|---|
|
#18+
Олег ВорбчиковВот пример из MS SQL: /****** Object: Table [dbo].[CACHE_PARAM] Script Date: 13.08.2004 14:54:29 ******/ if exists (select * from dbo.sysobjects where id = object_id(N'[CACHE_PARAM]') and OBJECTPROPERTY(id, N'IsUserTable') = 1) drop table [CACHE_PARAM] GO CREATE TABLE [CACHE_PARAM] ( [ID_LICH] [int] NOT NULL , [ID_PARAM] [int] NOT NULL , [P_TYPE] [int] NOT NULL , [VAL] [numeric](18, 7) NOT NULL ) ON [PRIMARY] GO А в берде это как реализовать? вот в чем вопрос!IBEScript это всё умеет. Брать на сайте http://ibexpert.com ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.08.2004, 16:04:39 |
|
||
|
|

start [/forum/topic.php?fid=40&msg=32648882&tid=1578083]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
255ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
57ms |
get tp. blocked users: |
1ms |
| others: | 227ms |
| total: | 579ms |

| 0 / 0 |
