Saturday, September 25, 2010

ไม่รู้ใครเป็นใคร

เรื่องแรก

"ตามไม่ทันพี่ ไปถามผู้หญิงคนนั้นเขาบอกไม่ใช่

ขณะที่ผมจ่ายเงินอยู่ที่เคาเตอร์เซเว่น พนักงานเซเว่นคนหนึ่งวิ่งกลับมาบอกพนักงานอีกคนที่อยู่ที่เคาเตอร์ เรื่องมีอยู่ว่ามีผู้หญิงคนหนึ่งซื้อของแล้วลืมเอาเงินทอน พนักงานขายแก่พรรษากว่าก็ใช้ให้พนักงานใหม่วิ่งเอาเงินทอนไปให้เขา แต่พนักงานคนนั้นตามไม่ทัน ช่วงเช้าเป็นเวลาที่มนุษย์เงินเดือนเดินไปเดินมาผ่านเซเว่นเยอะมาก ออกจากร้านไปก็ไม่รู้ว่าใครเป็นใครแล้ว เขาสะกิดถามผู้หญิงคนหนึ่งก็ไม่ใช่คนที่ลืมเงินทอน

คำว่า"แก่พรรษา" หมายถึงผู้ที่มีอายุงานเยอะกว่า อาวุโสกว่า ทำงานมาก่อน เลยมันจะข่มพนักงานใหม่ได้นิดๆถึงแม้ตำแหน่งจะเท่ากัน

ปกติพนักงานเซเว่นจะเก็บเงินทั้งหมดไว้ในลิ้นชักเครื่องคิดเงิน แต่เงินทอนที่ลูกค้าลืมไว้นั้นพนักงานตั้งไว้บนโต๊ะ คงจะรอลูกค้ากลับมาเอา

ถัดจากเซเว่นไปอีกประมาณ 100 เมตรเป็นคลองแสนแสบ

เรื่องที่ 2

"วันก่อนก็มีคนลืมตังทอน ให้แบงค์ 500 มาเราก็ทอนเศษไปก่อน พอได้เศษเขาก็ไปเลย อีก 400 ยังไม่ได้เอา พอหันหลังไปมันก็ปนกันไปหมด ไม่รู้ใครเป็นใคร" คนขายไก่ทอดเล่าให้ฟังหลังจากทอนเงินค่าข้าวหมกให้ผม

ที่ท่าเรืออโศกริมคลองแสนแสบ ด้านหลังท่าเรือมีร้านขายอาหารหลายร้าน หนึ่งในนั้นเป็นร้านนาดาข้าวหมกไก่ หาดใหญ่ (ข้าวเหนียวก็มี) โต๊ะตั้งอยู่ติดกับร้านข้าวไข่เจียว ร้านนี้เป็นไก่ทอดหาดใหญ่ของแท้ เพราะคนทอดเป็นคนหาดใหญ่ เปิดขายเฉพาะช่วงเช้าเท่านั้น ปกติจะขายทุกวันทำงาน ถ้าเดินมาจากท่าเรือก็จะผ่านร้านนี้อยู่แล้ว แต่ถ้าเดินมาจากรถไฟฟ้าใต้ดินวันไหนขายจะมีป้ายแขวนบอกไว้ตรงบันไดขึ้นสะพาน ถ้าไม่เห็นป้ายก็ไม่ต้องเดินมาดูที่ท่าเรือให้เสียเที่ยว แม้มันจะเพียงแค่ประมาณ 10 ก้าว

"ดีที่ตอนเที่ยงเขากลับมาเอา เขาก็กลัวว่าเราจะจำไม่ได้แล้วไม่ยอมให้เงินทอน เราก็บอกว่าไม่เป็นไร เรารู้อยู่ว่ามีคนลืมเงินทอน ถ้ามีคนกลับมาเอาเงินทอนแค่คนเดียวเราก็ไม่ขาดทุน"

เป็นวิธีคิดที่ดูซื่อๆ ตรงไปตรงมา และสบายใจ

Friday, January 1, 2010

SQL Server: การสร้าง Primary Key แบบ Auto Increment

แค่ใส่ PRIMARY KEY IDENTITY ต่อท้าย Primary Key

ตัวอย่างเช่น ถ้าเป็นการสร้าง table ใหม่

CREATE TABLE [dbo].[Cars]( [CarId] [int] PRIMARY KEY IDENTITY, [CarName] [nvarchar](100) NULL, [CarDate] [datetime] NULL, ) ON [PRIMARY] GO

เวลา insert ก็ไม่ต้องใส่ CarId มาด้วย มันจะ run เลขใหม่ให้เอง

ถ้าจะสร้าง Primary Key ให้กับ table ที่ยังไม่มี primary key ก็ใช้คำสั่ง


ALTER TABLE table1ADD CONSTRAINT PK_table1 PRIMARY KEY (IdColumn)


ถ้าเป็น table ที่มีอยู่แล้ว ต้องการจะเพิ่มฟิลด์ใหม่ให้เป็น primary key แบบ auto increment


Alter table table1 add  [IdColumn] [int] PRIMARY KEY IDENTITY

Saturday, February 23, 2008

SQL Server: ลบ Column ที่ Not Null และมีค่า Default

สำหรับ filed ที่คุณมีการตั้งค่า default ไว้ SQL Server จะไม่ยอมให้ drop โดยตรง เมื่อคุณใช้

alter table Table1 drop column Col1

จะขึ้น error ว่า
Msg 5074, Level 16, State 1, Line 1
The object 'DF__Table1__Col1__35E7E693' is dependent on column 'Col1'.
Msg 4922, Level 16, State 9, Line 1
ALTER TABLE DROP COLUMN Col1 failed because one or more objects access this column.

คุณต้อง

1. แก้ให้ Col1 เป็น null ได้ และไม่มีค่า default
alter table Table1 alter column [Col1] [int] NULL

2. ลบ constraint DF_... ทิ้งไปก่อน
alter table Table1 drop constraint DF__Table1__Col1__1FC39B4A

3. ทีนี้ก็ drop column ได้แล้ว
alter table Table1 drop column Col1

Command(s) completed successfully.