2006-08-29 (Tue)

* MS SQL Server �� DB ���� SQL ������ץȤ�����������ȥ��ץ����

���ε�����ľ���URL: Permlink | ���ε�����°���륫�ƥ���: [MS SQL Server] [SQL]

MS SQL Server2000 �� �����ġ��� Enterprise Manager �ǡ�����¸�ߤ���ǡ����١����Υ��󥹥��󥹤�ơ��֥롢���ȥ��ɥץ���������ʤɤ򥹥���ץȲ�������ȡ����ꤹ�륪�ץ����Υ�⡣

- �ʤ� SQL ������ץȤ��������Τ�

��¸�� DB ���� SQL ������ץȤ��������Ȥ���������ȵդμ���Ȥ�ΤϤʤ���������ϡ�DB �Υơ��֥��߷פ䥹�ȥ��ɤΥ����ǥ��󥰤� RDBMS ��°�� GUI �ġ���伫ư�����ġ�������褦�ˤʤꡢCREATE TABLE ���ǽ񤤤��ꤹ�뤳�Ȥ��ʤ��ʤä��������

�פ���ˡ�GUI �Υġ���dz�ȯ�ѥ����о�� DB ��ľ�����ʤ����äơ��������������ǥƥ��ȥ����Ф����֥����Ф���������Ȥ������������ DB �ޤ�����褦�ˤʤä��Τǡ��դκ�Ȥ�ɬ�פˤʤä��Ȥ������Ȥ���

������󡢻����� DB ���ä��Ȥ��� CREATE TABLE ��ƥ����ȥ��ǥ����Ǽ�񤭤�����Τ������θ� CREATE TABLE ��ư�������륹����ץȤ��ä��ꡢ�����������ߤ� GUI �Υġ�������Ѥ���Ȥ����������������夤�Ƥ��롣�䤬�����Τϥơ��֥��15����30���٤ξ����Ϥ� DB �ʤΤǡ�����ǽ�ʬ�Ѥ��Ѥ�Ǥ��ޤ���

�虜�虜 SQL ����Ȥ����ˡ�SQL Server �� DTS (Data Transformation Service - �ǡ����Ѵ������ӥ�) ��ž��������Ѥ��Ѥ�Ǥ��ޤ����⤢�롣�������ץ졼��ƥ����ȤΥ�����ץȤˤ���Ȥ������Ȥϡ����ʥåץ���åȤȤ�����¸�����ꡢSubversion �� PVCS��VSS �ʤɤ����ѤΥС����������ġ�������������Ǥ���Ȥ������Ȥ���������礭����������SQL Server �� VisualStudio + VSS �ȶ�̩��Ϣ�Ȥ��뤳�Ȥ�Ǥ��뤬�������Фι����ʤɤˤ�äƤϤ�����ˡ��Τ�ʤ����Ȥ�¿�����ᡢ������ץȲ������ˤ��꤬������ǽ����

- SQL ������ץ������μ��

Enterprise Manager �� �ǡ����١������֥������Ȥ򱦥���å�����SQL ������ץ�����������
��SQL ������ץ�����������ɥ��פ�ɽ�������Τǡ��оݥ��֥������Ȥ䥪�ץ�������ꤹ�롣

�ʲ������ץ����Υ�⡣
���ϥ����å��ܥå����Υ����å�����򡢢��ϥ��դ�ɽ����
���ϥ饸���ܥ���Υ����å�����򡢡��ϥ��դ�ɽ����

- �����̡ץ��� ������ץȲ����륪�֥������Ȼ���

���ܤ������֥������Ȥ� SQL ������ץȲ����롣ȴ����������ݤ��Τǡ������֥������ȤΥ�����ץ�(O) ������Ū�˻��ꤹ��Τ��褤��

�������֥������ȤΥ�����ץ�(O)

�����ơ��֥�(T)
�����ӥ塼(W)
�������ȥ��� �ץ���������(P)
�����ǥե����(D)
�����롼��(U)
�����桼��������ǡ�����(Y)
�����桼��������ؿ�(F)

- �ֽ񼰡ץ��� ������ץȽ񼰥��ץ����

�֤��٤Ƥν�°���֥������Ȥ��Ф��ƥ�����ץȤ�����(E)�פϺ���ɬ�פʤ��Τǥ��դˤ�����

������ץ� ���ץ�������Ѥ��ơ����֥������� ������ץȤ����������ˡ�����Ǥ��ޤ���

�����֥������Ȥ��Ȥ� CREATE <object> ���ޥ�ɤ�����(C)
�����֥������Ȥ��Ȥ� DROP <object> ���ޥ�ɤ�����(D)
�����٤Ƥν�°���֥������Ȥ��Ф��ƥ�����ץȤ�����(E)
��������ץ� �ե�����������ѥإå�����ޤ��(I)
����ĥ�ץ��ѥƥ���ޤ��(X)
��7.0 �ߴ��ε�ǽ�Τߥ�����ץȤ����(O)

������ץ� �ե�����������ѥإå�����ޤ��(I)�򥪥�ˤ��Ƥ����ȡ��оݥ��֥������Ȥ�̾���ȸ��ߤ����դ򥳥��ȤȤ����������Ƥ���롣�ʲ��Τ褦�ʴ�������/****** ���֥������� : ���ȥ��� �ץ��������� dbo.P_GetLandscapeCustomers ������ץ����� : 2006/08/23 12:43:12 ******/�ץƥ����Ȥκ�ʬ��Ȥ���˼���ˤʤ���ϥ��դˤ���Ф�����

�ֳ�ĥ�ץ��ѥƥ���ޤ��פ򥪥�ˤ��Ƥ����ȡ�EnterpriseManager �Υơ��֥�ǥ����ʤ��ղä��������(��)�ؤ����������Ȥ�ޤ�ƥ�����ץȤ��������Ƥ���롣

- �֥��ץ����ץ��� ������ץȺ������ץ����

���������å����󡣤��������֥ǡ����١��� ������ץ�(C)�פϥǡ����١����ե����� (.mdf) �� �ȥ�󥶥����������ե����� (.ldf) �����Хѥ���ϡ��ɥ����ɤ��Ƥ��ޤ������Τ��ᡢ�ѥ����ۤʤ�Ķ��Ǽ¹Ԥ�����ϥ����å��򥪥դˤ��뤫��������ץ���Υѥ�����������������Ȥ롣

���ǡ����١��� ������ץ�(C)
���ǡ����١��� �桼�����ȥǡ����١��� ������ ������ץ�(S)
��SQL Server �������� (Windows �� SQL Server ��������) ������ץ�(L)
�����֥������� ��٥븢�¥�����ץ�(M)

�ơ��֥� ������ץȺ������ץ����
������ǥå��� ������ץ�(X)
���ե�ƥ����� ����ǥå��� ������ץ�(I)
���ȥꥬ ������ץ�(R)
���祭���������������ǥե���Ȥ� CHECK ���󥹥���ץ�(K)

�ե����� ���ץ����
���ե����� �ե����ޥå�
��MS-DOS �ƥ����� (OEM)(D)
��Windows �ƥ����� (ANSI)(W)
�����󥿡��ʥ���ʥ� �ƥ����� (Unicode)(U)

��������ե�����
��1 �ե�����˺���(F)
�����֥������Ȥ��Ȥ˥ե��������(B)


2005-01-07 (Fri)

* �ʥ����륭����ꥵ�������ȥ���

���ε�����ľ���URL: Permlink | ���ε�����°���륫�ƥ���: [SQL] [Postgres] [MS SQL Server]

RDBMS �ˤ�����祭���仲������������γ��������ϡ��ʥ����륭�����⥵�������ȥ�����Ȥ���������ѹ��˶����ʤ롣

- �ʥ����륭��

�ܵҥ����ɤʤɤΡ��ӥ��ͥ��ˤ����Ƽ�����ȯ�����륭�������������Ȥ⤤����

- ���������ȥ���

�쥳���ɤ��դ����ꤹ�뤿��˥����ƥब����Ф������������ǥ�ƥ��ե����� (Identifier) �Ȥ⤤����Postgres ���ä��饷�ꥢ�뷿��MS SQL Server ���ä��� IDENTITY ��Ȥ��Τ���ñ��

�פ���ˡ��ܵҥ����ɤȤ��̤˥����ƥ�ǿ���Ф� ID ���Ǽ���륫������Ȥ������ȡ�����������������������Ȥ��ˤ⡢���������ȥ���������Ȥ���

- �ʤ����������ȥ�����Ȥ������ɤ��Τ�


Web+DB Press �� Vol.21 �˾ܤ����񤤤Ƥ��롣

�ܵҥ����ɤΥե����ޥåȤ��Ѥ�뤫�⤷��ʤ����顣�Ѥ�äƤ��ޤä���硢DB �κ��߷פ�ɬ�פ��ä��ꡢ�ǡ�����������������줿�ꡢ���Υǡ����Ȥ���Ӥ��Ǥ��ʤ��ʤä��ꤹ�롣

- �����ƥ�¦�ǿ���Ф���������Ȥ��ȶ�����줿�ʤ�

���������� DB �߷פ򤷻Ϥ᤿�����֥����ƥ�¦��ɬ�������򿶤�Ф��פ�º�ɤ������ڤ��鶵����줿�ʤ������ΤȤ��ϥ��������ȥ����Ȥ������դǤϤʤ����֥����ƥ�¦�ǿ���Ф������פȤ���ɽ�����ä����ɡ�

����ʸ塢�ܵҥ����ɤʤɤ����äƤ⥷���ƥ�¦�ǿ���Ф���ˡ����� ID ���Ǽ���륫����Ȥ��褦�ˤʤä���

- ����

���Υ��� L'eclat des jours(2005-01-07) http://arton.no-ip.info/diary/20050107.html#p01 �˿�ȯ����ƽ񤤤���

2004-08-27 (Fri)

* DATETIME��/TIMESTAMP����Ÿ���� WHERE����ϰϻ���

���ε�����ľ���URL: Permlink | ���ε�����°���륫�ƥ���: [SQL] [MS SQL Server] [Postgres]

����ΰ����� �ǡ����١������󥸥�ˤ�äưۤʤ�Τǡ������������������˻��ͤ��ư���ǧ���Ƥ���������

���Ȥ��С� time_column < '2004-08-27' �ΤȤ���'2004-08-27' �� ���Ĥλ�����ؤ��Τ���2004-08-27 00:00:00 �ʤΤ��� 2004-08-27 **:**:** ���Ĥޤ������ʤΤ������Ĥ�ϻ�ʬ�äޤǻ��ꤷ�Ƥ����Τǡ���ά����ɽ���������Ϥɤ��ʤ뤫Ĵ�٤Ƥ�������

- SQL Server2000 ��

���ջ���ǡ����λ���
http://www.microsoft.com/japan/msdn/library/ja/acdata/ac_8_c ...
��������ޤ������դ�������̤˳�Ǽ����ǡ������Ϥ���ޤ���datetime ���ޤ��� smalldatetime �����ͤ����ꤹ���硢�����������ꤹ��ȡ����դΥǥե���� "January 1, 1900" �����Ѥ���ޤ������դ�������ꤹ��ȡ�����Υǥե���� "12:00AM (����)" �����Ѥ���ޤ���

�פ���� SQL Server2000 �Ǥϡ�00:00:00 �ˤʤ�äƤ��Ȥ���

- PostgreSQL 7.2.1 �ξ�硣

�ɥ�����Ȥϸ��Ĥ����ʤ��ä���
����PostgreSQL�桼������: PostgreSQL 7.2.X ��°�ɥ������
http://www.postgresql.jp/document/pg721doc/

7.4 �����ʸ��⸫�Ƥߤ�������Ϥ����Τʵ��Ҥϸ��Ĥ����ʤ��ä���
����PostgreSQL�桼����: PostgreSQL 7.4.X ��°�ɥ������
http://www.postgresql.jp/document/pg743doc/

�ޤ������θ��äƤߤ�Ф狼������������֤� SQL Server2000 ��Ʊ����̤ˤʤ�Ȼפ����ɡ�

- CREATE TABLE

SQL Server2000 �ѡ�
CREATE TABLE time_where_test (utime datetime);

PostgreSQL 7.2.1 �ѡ�
CREATE TABLE time_where_test (utime timestamp);

- INSERT ����Ÿ��

�ޤ��� INSERT �Υƥ��ȡ�
������������ȡ�SQL Server2000 �� PostgreSQL 7.2 �Ȥ�� 'YYYY-MM-DD' �� 'YYYY-MM-DD 00:00:00:000' ��Ÿ������롣�ʲ�������ץ롣

PostgreSQL 7.2.1 �Ǥ� SQL Server2000 �Ǥ�Ʊ����̤ˤʤä����ʲ���Postgres �ν��Ϸ�̡�
hiroaki=> INSERT INTO time_where_test VALUES ('2004-06-18');
INSERT 93862442 1
hiroaki=> SELECT * FROM time_where_test;
        utime
---------------------
2004-06-18 00:00:00
(1 row)

- SELECT ����Ÿ��

���٤� SELECT ���Υƥ��ȡ������餯 INSERT ����Ʊ���褦��Ÿ���������������ɡ�ǰ�Τ��ᡣ

���ä��Υơ��֥�� DROP ���� CREATE ���ʤ�����8�쥳����ʬ�Υƥ��ȥǡ����� INSERT ���롣
INSERT INTO time_where_test VALUES ('2004-08-09 02:00:00');
INSERT INTO time_where_test VALUES ('2004-08-20 03:00:00');
INSERT INTO time_where_test VALUES ('2004-08-26 00:00:00');
INSERT INTO time_where_test VALUES ('2004-08-26 04:00:00');
INSERT INTO time_where_test VALUES ('2004-08-26 23:59:59');
INSERT INTO time_where_test VALUES ('2004-08-27 00:00:00');
INSERT INTO time_where_test VALUES ('2004-08-27 09:00:00');
INSERT INTO time_where_test VALUES ('2004-08-27 23:59:59');

INSERT ������ä��� SELECT ���Ƥߤ롣���٤� SQL Server2000 �Ǥν��ϡ�

SELECT * FROM time_where_test WHERE utime < '2004-08-26' ORDER BY utime;

    utime
------------------------------------------------------
2004-08-09 02:00:00.000
2004-08-20 03:00:00.000

(2 ���������ޤ���)

ͽ���̤ꡢ2004-08-26 �� 2004-08-26 00:00:00 ��Ÿ�����줿��

����������դ����8/26�Υ쥳���ɤ�ҥåȡ�
SELECT * FROM time_where_test WHERE utime <= '2004-08-26' ORDER BY utime;

utime
------------------------------------------------------
2004-08-09 02:00:00.000
2004-08-20 03:00:00.000
2004-08-26 00:00:00.000

(3 ���������ޤ���)

Postgres �Ǥ�Ʊ���褦��ư�����

2003-12-24 (Wed)

* �ץ�����ޤΤ����SQL ��2��

���ε�����ľ���URL: Permlink | ���ε�����°���륫�ƥ���: [��] [SQL]

¥×¥í¥°¥é¥Þ¤Î¤¿¤á¤ÎSQL Âè2ÈÇ�ץ�����ޤΤ����SQL ��2��

���硼 ���륳 / Joe Celko / ���� ����
ȯ����: 2001/04


amazon �Ǿܤ�������   bk1�Ǿܤ�������

SQL ���ѷи�����ǯ�ʾ�ν��Ԥ������Ը������ܤȤΤ��ȡ�

2003-07-29 (Tue)

* SQL �� COALESCE

���ε�����ľ���URL: Permlink | ���ε�����°���륫�ƥ���: [SQL] [Postgres] [MS SQL Server]

COALESCE() �ϡ������Τ��� NULL �Ǥʤ���Τ��֤���CASE �� NULLIF ��ȤäƤ�Ʊ�����Ȥ��Ǥ��뤱�ɡ����ä��������ʷ顣����Ĺ��ʣ���ΰ��������Ǥ���������

- COALESCE ��ե����

PostgreSQL 7.3.4 �桼�������� Chapter 6. �ؿ��ȱ黻�� ��P
http://www.postgresql.jp/document/pg734doc/user/functions-co ...
6.12.2. COALESCE
COALESCE(value [, ...])
COALESCE �ؿ��ϡ�NULL �Ǥʤ����Ȥκǽ�ΰ������֤��ޤ��� �ǡ�����ɽ������Ū�Ǽ��Ф��ݡ�NULL �ͤ�����˥ǥե�����ͤ�Ȥ���硢���Ȥ��������ʤ��Ȥ�����ޤ��� ������Ǥ���

SELECT COALESCE(description, short_description, '(none)') ...

COALESCE
http://www.microsoft.com/japan/msdn/library/ja/tsqlref/ts_ca ...

- COALESCE �Υ��ڥ뤬�Ф����ʤ�

�Ȥ����ǡ���� COALESCE �Υ��ڥ뤬�ʤ����Ф����ʤ����ᡢ���ε�����񤤤���COLESE �Ȥ� COALESE �Ȥ� COLESCE �ʤɤȽ񤤤Ƥ��ޤ���ʸˡ���顼�ˤʤ뤳�Ȥ�¿���ä����Ƕ�Ǥ� MS SQL Server ��°�Υ����ꥢ�ʥ饤���� SQL ��񤯤褦�ˤʤꡢ������ɿ��Ť��β��ä������褦�ˤʤä�����ְ㤤�����ä����ɡ�����Ǥ����˺��뤳�Ȥ����äơ����ΤȤ��ϥ����ꥢ�ʥ饤���δ鿧��Ǥ��ʤ��饿���פ��Ƥ��롣������ɤ˿����դ��������򥹥ڥ롢�����դ��ʤ��ä���ְ㤤���ڥ�����ޤ��˴鿧��ǤäƤ봶������

COALESCE ��ȯ���ϡ֤������줹�פʤ�����ɡ��֤��פΤȤ����� SCE �ˤʤäƤ��뤳�Ȥ��Ф����ʤ��������Ȼפ����ǽ�ϡ֤����꡼���פȸ��ɤ��Ƥ������Ȥ⥹�ڥ�ߥ��θ������⡣

coalesce goo ���¼�ŵ
http://dictionary.goo.ne.jp/search.php?MT=coalesce&kind= ...

2003-07-17 (Thu)

* SQL �ǤΥ��������� ' �� LIKE

���ε�����ľ���URL: Permlink | ���ε�����°���륫�ƥ���: [SQL]

- SQL �Ǥϥ��������פ��ʤ���Фʤ�ʤ�ʸ�������롣

����ϡ�MS SQL Server �Ǥ�ʸˡ���⤹�롣
Postgres �Ǥ�ʸˡ�ϡ��ʲ��򻲾ȡ�

[pgsql-jp: 26535] % �ǻϤޤ�ʸ���� LIKE ����
http://ml.postgresql.jp/pipermail/pgsql-jp/2002-June/001677. ...

PostgreSQL 7.3.2 �桼�������� Chapter 6. �ؿ��ȱ黻��
http://search.net-newbie.com/pgsql/functions-matching.html

- ' ����������

��������� ' �������硢' ���ղä��롣
��)
�����꤬ I'll be back �ΤȤ�

SELECT * FROM table WHERE string = 'I''ll be back';

- LIKE �ǻȤ���᥿ʸ���Υ���������

��������˰ʲ���ʸ���󤬤����硢# ���ղä��롣

% (�ѡ������)
_ (���������)
[ (�ѥ��å�)
] (�ѥ��å�)
^ (�ϥå�)
# (����������ʸ�����Τ򥨥������פ���ˤϡ�Ʊ��ʸ����³����)

# ���������̣���äˤʤ���¾��ʸ���ǥ��������פ�������С� ESCAPE ��ǻ���Ǥ��롣
ESCAPE '#'

��)
�����꤬ 100% �ΤȤ���
LIKE '%100#%%' ESCAPE '#'

�����꤬ 100# �ΤȤ���
LIKE '%100##%' ESCAPE '#'

�����꤬ K's dining #100 �ΤȤ�
LIKE '%K''s dining ##100%' ESCAPE '#'

- �ƥ��Ȥ˻Ȥä� SQL

CREATE TABLE esc (string VARCHAR(100));
INSERT INTO esc (string) VALUES ('100%');
INSERT INTO esc (string) VALUES ('it is ');
INSERT INTO esc (string) VALUES ('%');
INSERT INTO esc (string) VALUES ('%%%');
INSERT INTO esc (string) VALUES ('[');
INSERT INTO esc (string) VALUES (']');
INSERT INTO esc (string) VALUES ('^');
INSERT INTO esc (string) VALUES ('^ff');
INSERT INTO esc (string) VALUES ('10_');
INSERT INTO esc (string) VALUES ('_');
INSERT INTO esc (string) VALUES ('others');
INSERT INTO esc (string) VALUES ('ɽ');
INSERT INTO esc (string) VALUES ('#1');

SELECT string FROM esc;
SELECT string FROM esc WHERE string LIKE '%#%';
SELECT string FROM esc WHERE string LIKE '%##%' ESCAPE '#';

2003-07-15 (Tue)

* MS-SQL Server �Ǥ����շ׻�

���ε�����ľ���URL: Permlink | ���ε�����°���륫�ƥ���: [SQL]

- ���������դ���ĥ쥳���ɤ� SELECT ���� Transact SQL��

SELECT product_id FROM product
WHERE CONVERT(CHAR(10), product.last_update, 111) =
CONVERT(CHAR(10), DATEADD(DAY, -1, CURRENT_TIMESTAMP), 111);

2003-06-06 (Fri)

* UPSERT / MERGE ����ȥꥬ MS SQL Server 2000��

���ε�����ľ���URL: Permlink | ���ε�����°���륫�ƥ���: [SQL] [MS SQL Server]

2003-06-03 �Υȥꥬ�ϡ���äȴʷ�˽񤱤뤳�Ȥ˵��Ť������Ķ��� MS SQL Server 2000��

- ����

GO
DROP TRIGGER log_transaction_ao;
GO
CREATE TRIGGER log_transaction_ao ON users FOR INSERT, UPDATE AS
BEGIN
  INSERT INTO users_log SELECT * FROM inserted
  IF (SELECT COUNT(*) FROM inserted WHERE commit_master = 1) > 0 BEGIN
    DECLARE @user_cd VARCHAR(5)
    SELECT @user_cd = user_cd FROM deleted
    IF (@user_cd IS NOT NULL)  BEGIN
      DELETE FROM user_master WHERE user_cd = @user_cd
    END
    INSERT INTO user_master SELECT * FROM inserted
  END
END

- �ʷ���

GO
DROP TRIGGER log_transaction_users;
GO
CREATE TRIGGER log_transaction_users ON ao FOR INSERT, UPDATE AS
BEGIN
  INSERT INTO user_log SELECT * FROM inserted
  IF (SELECT COUNT(*) FROM inserted WHERE commit_master = 1) > 0 BEGIN
    DELETE FROM user_master WHERE user_cd IN (SELECT user_cd FROM deleted)
    INSERT INTO user_master SELECT * FROM inserted
  END
END

2003-06-03 (Tue)

* �ȥꥬ�ˤ��ǡ����Υϥ�ɥ��

���ε�����ľ���URL: Permlink | ���ε�����°���륫�ƥ���: [SQL] [MS SQL Server]

- �ȥꥬ��Ȥ����Ȥǡ�INSERT/UPDATE ʸ��ʣ���Υơ��֥�ˤ��Τޤ�ȿ�Ǥ����뤳�Ȥ��Ǥ��롣


- �֥桼�������Ϥ������Ƥ�������ꤿ���פȤ����ꥯ�����Ȥ�����������֤Υơ��֥���ꤲ��줿�������Ʊ��������������Ѱդ��������ѤΥơ��֥���ɵ����Ƥ������Ȥ���������Ǽ¸��Ǥ����������

�ޤ����ޥ͡����㤫��ϡ��֥ץ������¦��ʣ���Υơ��֥�� SQL ���ꤲ��ΤϤ�餻�����ʤ���������ꤹ�뤪���줬���롣�������Ȥߤ���ʤ����ͤ��ƤߤƤ��졣�פȤ�����Ƥ��롣

- ����

����ѥơ��֥�ȥޥ������ơ��֥�ȥ����ѥơ��֥���Ѱդ��롣
�����ѥơ��֥�Υơ��֥�����ϡ��ޥ������ơ��֥�ȴ���Ū��Ʊ��������
��ˡ������󡢻�������������ʤɤϻ��ꤷ�ʤ��褦�ˤ��롣
�����ѥơ��֥�˰ʲ��Τ褦�� INSERT/UPDATE �ȥꥬ�򥻥åȤ��롣
OLD �ü�ơ��֥�򻲾Ȥ����������Ƥ�����ѥơ��֥�� INSERT ���롣

MS SQL Server �Ǥϡ�OLD �ơ��֥�� inserted �ȸƤФ�Ƥ��롣
postgres �ʤɤȤ�̾�����㤦�����ǡ���ǽ���Ѥ��ʤ��褦����
������Postgres �ϥȥꥬ��ȯư�����ߥ󥰤����Ǥ��뤬��
MS SQL Server 2000 �Ǥϻ���Ǥ��ʤ����ȥꥬ��ȯư����Τϡ���������å��ʤɤθ��������
�������Ȼפä��顢MS SQL Server 2000 �ˤ������ȯư����ȥꥬ�����뤽���ʡ�
INSTEAD OF �ȥꥬ�Ȥ�����Τǡ�����λ���ȯư�ȥꥬ�� AFTER �ȥꥬ�ȸƤ֤ȤΤ��ȡ�

- ����ץ�

-- log �ơ��֥�ؤ�̵���� INSERT ���롣
-- master �ơ��֥�ؤϡ�commit_master ����ब1�λ��Τ� DELETE & INSERT ���롣
INSERT INTO user_master SELECT * FROM inserted �Ǥϡ�inserted ��ʣ���쥳���ɤǤ⤹�٤� INSERT ���Ƥ���롣
DROP TRIGGER log_transaction_user;
CREATE TRIGGER log_transaction_user ON user FOR INSERT, UPDATE AS
BEGIN
  INSERT INTO user_log SELECT * FROM inserted
  IF (SELECT COUNT(*) FROM inserted WHERE commit_master = 1) > 0 BEGIN
    DECLARE @user_cd VARCHAR(5)
    SELECT @user_cd = user_cd FROM inserted
    DELETE FROM user_master WHERE user_cd = @user_cd
    INSERT INTO user_master SELECT * FROM inserted
  END
END

2003-05-29 (Thu)

* �ǡ����١������ɤ߹��ߤ�֥��å����뤿��Υ��å�

���ε�����ľ���URL: Permlink | ���ε�����°���륫�ƥ���: [SQL]

���ѺѤߥե饰�� false �ιԤ� SELECT �����ǡ����������
���θ塢���ѺѤߥե饰��Ω�Ƥ�Ȥ���������ͤ��롣
�Ķ��� PostgreSQL 7.2.1 �����ꡣ

��������ϡ�SET TRANSACTION ISOLATION LEVEL SERIALIZABLE;
��ñ��˥ȥ�󥶥�������٥��夲�Ƥ��н�Ǥ��ʤ���

1: BEGIN;
2: SET TRANSACTION ISOLATION LEVEL SERIALIZABLE;
3: SELECT id, data FROM table WHERE flag = FALSE;
4: ------ ���ץꥱ�������ν��� ------
5: UPDATE table SET flag = FALSE;
6: COMMIT;

������ȡ�3 �� SELECT ������ä�����̤Υȥ�󥶥�����󤬳��Ϥ�����硢
����ͽ��ιԤ� SELECT ���ɤ߹��ޤ�Ƥ��ޤ���
��̡�Ʊ���Ԥ� SELECT ���Ƥ��ޤ������θ� 5 ��UPDATE ��ȯ�Ԥ��褦�Ȥ���������
SERIALIZABLE ��ʬΥ�����å��˰��ä����ꡢ2���ܤΥȥ�󥶥������ϥ��ܡ��Ȥ��Ƥ��ޤ���
ERROR: Can't serialize access due to concurrent update

���顼��ȯ���������˽�����Ԥ�����ˤϡ������ȥ�󥶥����������ǤϤʤ�
���ȥȥ�󥶥�������֥��å����ʤ���Фʤ�ʤ���
�Ĥޤꡢ��������ϥȥ�󥶥�������٥������Ǥϲ��Ǥ��ʤ���

- ��褹��ˤϡ�LOCK ʸ�ǹԤޤ��ϥơ��֥����å�����ɬ�פ����롣

LOCK TABLE table IN ACCESS EXCLUSIVE MODE;
ACCESS EXCUSIVE MODE �ǥ��å����뤳�Ȥǡ�SELECT ʸ���Τ�֥��å�����롣

1: BEGIN;
2: LOCK TABLE table IN ACCESS EXCLUSIVE MODE;
3: SELECT id, data FROM table WHERE flag = FALSE;
4: ------ ���ץꥱ�������ν��� ------
5: UPDATE table SET flag = FALSE;
6: COMMIT;

- ����ץ�

BEGIN TRANSACTION;
LOCK TABLE uniq_uri IN ACCESS EXCUSIVE MODE;
SELECT TOP 1 uri FROM uniq_uri WHERE digit = 5 AND last_update IS NULL;
COMMIT TRANSACTION;

- ����:

PostgreSQL 7.3.2 �桼�������� Chapter 9. Ʊ���¹�����
http://www.postgresql.jp/document/pg732doc/user/mvcc.html

[pgsql-jp: 29112] Ʊ�����������棲
http://ml.postgresql.jp/pipermail/pgsql-jp/2003-February/004 ...

2003-05-28 (Wed)

* MS SQL Server �� SELECT �η�̷�������¤���

���ε�����ľ���URL: Permlink | ���ε�����°���륫�ƥ���: [SQL]

- TOP ��Ȥ�

SELECT TOP 1 uri FROM uniq_uri;

2003-04-14 (Mon)

* VARCHAR(n) ��ʸ�����äƥޥ���Х����б�?

���ε�����ľ���URL: Permlink | ���ε�����°���륫�ƥ���: [SQL]

������¸���ä��ꤹ��褦��ͽ�������Ȥ� Postgres �� MS SQL Server �ǻ�Ƥߤ褦��

2003-03-07 (Fri)

* �ơ��֥�������������

���ε�����ľ���URL: Permlink | ���ε�����°���륫�ƥ���: [SQL]

���������: ��ĤΥ��������ʣ�����ͤ�����ʤ� (DB �Ǥ����������Τ��Ȥ���)��
����������: �祭���Ȥʤ�����ͤ���ޤ�С����Τ���¾������ͤ���ޤ롣
�軰������: �祭���ʳ�������ͤˤ�äơ�¾������ͤ���ޤ뤳�Ȥ��ʤ���

���ޤǤϡ֤�����߷פ��㹹������Ȥ������Ѥ�����ơ��֥��ʬ���Ƥ������פȤ��������ǥơ��֥��ʬ���ԤäƤ���������������Τ�����Τ�Ȥ��߷פǤ��롣�Ȥ����������ޤޤǴ��Ǥ�äƤ��äƤ��Ȥ�����������

2002-12-03 (Tue)

* n ���������դ���� SQL

���ε�����ľ���URL: Permlink | ���ε�����°���륫�ƥ���: [SQL] [Postgres]

n ���������դ���� SQL��

��) 2002ǯ12��3����7��������롣
# SELECT to_date(now() + '-7day', 'YYYY-MM-DD');
  to_date
------------
2002-11-26
(1 row)
�������ʬ�Ϥɤ��ʤ뤫�ϡ���Ƥߤ�ɬ�פ��ꡣ
00:00:00 �ˤʤ�Τ���SELECT ��������ˤʤ�Τ��ϡ�������¸?
����Ȥ⡢SQL �ε��ʤǷ�ޤäƤ�Τ���?

2002-11-18 (Mon)

* SQL �� NATURAL LEFT OUTER JOIN ʸ

���ε�����ľ���URL: Permlink | ���ε�����°���륫�ƥ���: [SQL]

- OUTER JOIN ����Ȥ���NATURAL ����ꤹ��С�ON ��ǥ����̾���������ʤ��ƺѤࡢ�Ȥ������Ǥ�äƤߤ��Τ����������٤���


�����̾�ǻ���: Total runtime: 1727.18 msec
NATURAL �ǻ���: Total runtime: 3849.53 msec

�ܶ᤯�٤��ʤäƤ롣NATURAL ���ȡ��ɤΥ����� JOIN �Ǥ��뤫�ɤ�����õ�����뤿���٤��ʤäƤ���Τ����������ʲ��� EXPLAIN ANALYZE �η�̤�ܤ��Ƥ�����

- �����̾�ǻ��ꤷ���Ȥ��� SQL : Total runtime: 1727.18 msec

Unique  (cost=31062.45..31092.26 rows=92 width=260) (actual time=1675.56..1723.79 rows=150 loops=1)
  ->  Sort  (cost=31062.45..31062.45 rows=918 width=260) (actual time=1675.42..1675.88 rows=156 loops=1)
        ->  Merge Join  (cost=30950.59..31017.30 rows=918 width=260) (actual time=442.96..474.64 rows=156 loops=1)
              ->  Index Scan using summary_pkey on summary  (cost=0.00..52.00 rows=1000 width=80) (actual time=0.27..0.27 rows=0 loops=1)
              ->  Sort  (cost=30950.59..30950.59 rows=918 width=180) (actual time=442.35..443.03 rows=156 loops=1)
                    ->  Hash Join  (cost=4.90..30905.44 rows=918 width=180) (actual time=15.61..439.20 rows=156 loops=1)
                          ->  Merge Join  (cost=0.00..30884.49 rows=918 width=123) (actual time=8.90..423.29 rows=156 loops=1)
                                ->  Index Scan using sysqa_pkey on account  (cost=0.00..30826.80 rows=578 width=115) (actual time=7.38..339.52 rows=32 loops=1)
                                      SubPlan
                                        ->  Materialize  (cost=26.48..26.48 rows=8 width=4) (actual time=0.01..0.09 rows=32 loops=1157)
                                              ->  Index Scan using doc_property_system_code on doc_property  (cost=0.00..26.48 rows=8 width=4) (actual time=1.00..3.66 rows=32 loops=1)
                                ->  Index Scan using doc_property_serialnum on doc_property  (cost=0.00..40.19 rows=1835 width=8) (actual time=0.93..61.53 rows=1703 loops=1)
                          ->  Hash  (cost=4.52..4.52 rows=152 width=57) (actual time=6.33..6.33 rows=0 loops=1)
                                ->  Seq Scan on system_name  (cost=0.00..4.52 rows=152 width=57) (actual time=0.33..4.38 rows=152 loops=1)

- NATURAL �ǻ��ꤷ���Ȥ��� SQL: Total runtime: 3849.53 msec
Unique  (cost=31070.42..31100.24 rows=92 width=292) (actual time=3800.17..3846.17 rows=150 loops=1)
  ->  Sort  (cost=31070.42..31070.42 rows=918 width=292) (actual time=3800.02..3800.45 rows=156 loops=1)
        ->  Merge Join  (cost=31020.42..31025.27 rows=918 width=292) (actual time=2382.34..2412.63 rows=156 loops=1)
              ->  Sort  (cost=30950.59..30950.59 rows=918 width=180) (actual time=2381.23..2381.78 rows=156 loops=1)
                    ->  Hash Join  (cost=4.90..30905.44 rows=918 width=180) (actual time=15.27..438.47 rows=156 loops=1)
                          ->  Merge Join  (cost=0.00..30884.49 rows=918 width=123) (actual time=8.46..422.62 rows=156 loops=1)
                                ->  Index Scan using sysqa_pkey on account  (cost=0.00..30826.80 rows=578 width=115) (actual time=7.18..339.89 rows=32 loops=1)
                                      SubPlan
                                        ->  Materialize  (cost=26.48..26.48 rows=8 width=4) (actual time=0.01..0.07 rows=32 loops=1157)
                                              ->  Index Scan using doc_property_system_code on doc_property  (cost=0.00..26.48 rows=8 width=4) (actual time=0.81..3.46 rows=32 loops=1)
                                ->  Index Scan using doc_property_serialnum on doc_property  (cost=0.00..40.19 rows=1835 width=8) (actual time=0.72..60.75 rows=1703 loops=1)
                          ->  Hash  (cost=4.52..4.52 rows=152 width=57) (actual time=6.39..6.39 rows=0 loops=1)
                                ->  Seq Scan on system_name  (cost=0.00..4.52 rows=152 width=57) (actual time=0.32..4.41 rows=152 loops=1)
              ->  Sort  (cost=69.83..69.83 rows=1000 width=112) (actual time=0.74..0.74 rows=0 loops=1)
                    ->  Seq Scan on summary  (cost=0.00..20.00 rows=1000 width=112) (actual time=0.02..0.02 rows=0 loops=1)


���٤Ƥε����θ��Ф� (��1029��)
�����ƥ���ΰ����ȵ����ο�
���ƥ��ꤴ�Ȥ˵�����ޤȤ��ɤߤǤ��ޤ���������ɽ������򸫤������ϡ����٤Ƥε����θ��Ф� (���ƥ�����ɽ��) �ء�

ľ��30��ʬ�ε���
2007-04-23 (Mon)
2007-03-07 (Wed)
2007-02-27 (Tue)
2007-01-17 (Wed)
2007-01-15 (Mon)
2007-01-14 (Sun)
2007-01-08 (Mon)
2006-12-01 (Fri)
2006-11-22 (Wed)
2006-11-20 (Mon)
2006-11-19 (Sun)
2006-09-30 (Sat)
2006-08-29 (Tue)
2006-08-04 (Fri)
2006-07-27 (Thu)
2006-07-23 (Sun)
2006-07-17 (Mon)
2006-07-10 (Mon)
2006-07-06 (Thu)
2006-07-03 (Mon)
2006-06-29 (Thu)
2006-06-28 (Wed)
2006-06-27 (Tue)
2006-06-25 (Sun)
2006-06-19 (Mon)
2006-06-18 (Sun)
2006-06-15 (Thu)
2006-06-11 (Sun)
2006-06-01 (Thu)
2006-05-30 (Tue)
�ץ��ե�����
��ƣ ���������󥸥˥��Ǥ������ԵܻԤ˽���Ǥ��ޤ���
���
RSS
���ݥ󥵡��ɥ��
Powered by
�������饤�󥿡��ͥå���

© ��ƣ ���� Saito Hiroaki Gmail Address
Landscape - ���󥸥˥��Υ�� http://sonic64.com/
Landscape �����ɥ����������ɤߤޤ���
�Ҥ餬�ʤ��� ���ɤ������� �Ǥ���