Heidisql: AUTO_INCREMENT MSSQL рд╕рд░реНрд╡рд░ рдкрд░ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛

рдХреЛ рдирд┐рд░реНрдорд┐рдд 30 рдЕрдХреНрддреВре░ 2018  ┬╖  5рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: HeidiSQL/HeidiSQL

рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдкреБрди: рдкреЗрд╢ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрджрдо

  1. SQL рд╕рд░реНрд╡рд░ рдкрд░ рдПрдХ рддрд╛рд▓рд┐рдХрд╛ рдмрдирд╛рдПрдБ;
  2. рдПрдХ рдЖрдИрдбреА рдХреЙрд▓рдо рдЬреЛрдбрд╝реЗрдВ;
  3. рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдХреЛ AUTO_INCREMENT рдкрд░ рд╕реЗрдЯ рдХрд░рдХреЗ рдЖрдИрдбреА рдХреЙрд▓рдо рдХреЛ рдСрдЯреЛ рдЗрдВрдХреНрд░реАрдореЗрдВрдЯрд┐рдВрдЧ рдХреЗ рд░реВрдк рдореЗрдВ рд╕реЗрдЯ рдХрд░реЗрдВ;
  4. рддрд╛рд▓рд┐рдХрд╛ рд╕рд╣реЗрдЬреЗрдВред рдЗрд╕рдХрд╛ рдкрд░рд┐рдгрд╛рдо рддрд╛рд▓рд┐рдХрд╛ рдмрдирд╛рдиреЗ рдпрд╛ рдЕрджреНрдпрддрди рдХрд░рдиреЗ рдореЗрдВ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдпрд╣ рд╡рд┐рдлрд▓ рд░рд╣рддрд╛ рд╣реИред

рд╡рд░реНрддрдорд╛рди рд╡реНрдпрд╡рд╣рд╛рд░

рдпрд╣ рддрд╛рд▓рд┐рдХрд╛ рдХреЛ рдмрдирд╛рддрд╛ рдпрд╛ рд╕рдВрд╢реЛрдзрд┐рдд рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред
рдпрд╣ рдХрдерди рдХреЗ AUTO_INCREMENT рднрд╛рдЧ рдкрд░ рдПрдХ рддреНрд░реБрдЯрд┐ рджреЗрддрд╛ рд╣реИред

рдЕрдкреЗрдХреНрд╖рд┐рддреН рд╡реНрдпрд╡рд╣рд╛рд░

рдЗрд╕реЗ рдЯреЗрдмрд▓ рдмрдирд╛рдирд╛ рдпрд╛ рдЕрдкрдбреЗрдЯ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред
рдпрд╣ рддреНрд░реБрдЯрд┐ рдирд╣реАрдВ рджреЗрдиреА рдЪрд╛рд╣рд┐рдПред

рд╕рдВрднрд╛рд╡рд┐рдд рд╕реНрдерд┐рддрд┐

AUTO_INCREMENT рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп, SQL рд╕рд░реНрд╡рд░ рдХреЛ рдкрд╣рдЪрд╛рди (1,1) рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред
рдХреЛрд╖реНрдардХ рдХреЗ рдмреАрдЪ рдкрд╣рд▓реА рд╕рдВрдЦреНрдпрд╛ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдорд╛рди рд╣реИ, рджреВрд╕рд░реА рд╡реГрджреНрдзрд┐ рд╣реИред
рдЙрджрд╛рд╣рд░рдг:
рдЯреЗрдмрд▓ рдкрд░реНрд╕рди рдмрдирд╛рдПрдВ (
рдЖрдИрдбреА рдЕрдВрддрд░ рдкрд╣рдЪрд╛рди (1,1) рдкреНрд░рд╛рдердорд┐рдХ рдХреБрдВрдЬреА,
рдирд╛рдо рд╡рд░реНрдХрд░(255) рдиреЙрдЯ рдиреНрдпреВрд▓
);

рдкрд░реНрдпрд╛рд╡рд░рдг

  • рд╣рд╛рдЗрдбрд┐рдПрд╕рдХреНрдпреВрдПрд▓ рд╕рдВрд╕реНрдХрд░рдг:
    9.5.0.5315, рдирд╡реАрдирддрдо рд░рд╛рддреНрд░рд┐рдХрд╛рд▓реАрди рдирд┐рд░реНрдорд╛рдгред рдЕрд╕рд▓ рдореЗрдВ, рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдПрдХ рд░рд╛рдд рдХреЗ рдирд┐рд░реНрдорд╛рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛, рдмрд▓реНрдХрд┐ рдПрдХ рд╕реНрдерд┐рд░ рдирд┐рд░реНрдорд╛рдг рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред
  • рдбреЗрдЯрд╛рдмреЗрд╕ рд╕рд┐рд╕реНрдЯрдо рдФрд░ рд╕рдВрд╕реНрдХрд░рдг:
    SQL рд╕рд░реНрд╡рд░, рд╕рднреА рд╕рдВрд╕реНрдХрд░рдгред
  • рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо:
    рдХреНрд▓рд╛рдЗрдВрдЯ рдкрд░ рд╡рд┐рдВрдбреЛрдЬ 10, рд╕рд░реНрд╡рд░ рдкрд░ рдЕрдЬреНрдЮрд╛рддред

рд╕рднреА 5 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рдХреНрдпрд╛ рдпрд╣ рдПрдХ рдмрдбрд╝рд╛ рдмрджрд▓рд╛рд╡ рд╣реИ? рдХреНрдпрд╛ рдкрд╣рд▓реЗ рдкреАрдЖрд░ рдХреЗ рд▓рд┐рдП рдпрд╣ рдЖрд╕рд╛рди рд╣реЛрдЧрд╛?

рдореБрдЭреЗ рднреА рдпрд╣реА рд╕рдорд╕реНрдпрд╛ рд╣реБрдИред
рдХреНрдпрд╛ рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рдХреЛрдИ рд╕рдорд╛рдзрд╛рди рд╣реИ?

рд╣рд╛рдп рднрдЧрд╡рд╛рдиреН! рдпрд╣ 2020 рд╣реИ рдФрд░ рдпрд╣ рдЕрднреА рднреА рдЦреБрд▓рд╛ рд╣реИред рдХреГрдкрдпрд╛ рджреЛрд╕реНрддреЛрдВ, рдЗрд╕ ASAP рдХреЛ рдареАрдХ рдХрд░реЗрдВред
рдПрдлрд╡рд╛рдИрдЖрдИ: рдореИрдВ рд╣реЗрдЗрдбрд┐рд╕рдХреНрд▓ v10.3 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ

рдЖрдЬ рднреА рдЗрд╕рдореЗрдВ рдЪрд▓ рд░рд╣рд╛ рд╣реИред рдПрд╕рдПрд╕рдПрдордПрд╕ рдЦреЛрд▓рдиреЗ рдХреЗ рдПрдХрдорд╛рддреНрд░ рдХрд╛рд░рдгреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ :(

рдпрд╣рд╛рдБ MS SQL 12.0.5223.6 рдкрд░ рдПрдХ рддрд╛рд▓рд┐рдХрд╛ рдЙрддреНрдкрдиреНрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╣реИ рдЬреЛ рд╕рдорд╕реНрдпрд╛ рдХреЛ рджрд░реНрд╢рд╛рддреА рд╣реИ:

CREATE TABLE [dbo].[User](
    [Username] [nvarchar](20) NOT NULL,
    [FullName] [nvarchar](50) NOT NULL,
    [EmailAddress] [nvarchar](100) NULL,
    [LastLoginDate] [datetime] NULL,
    [IsAdministrator] [bit] NULL,
    [Roles] [int] NOT NULL,
    [Id] [int] IDENTITY(1,1) NOT NULL,
    [CreatedAt] [datetime2](7) NOT NULL,
    [CreatedBy] [nvarchar](20) NOT NULL,
    [ModifiedAt] [datetime2](7) NULL,
    [ModifiedBy] [nvarchar](20) NULL,
    [LastPortfolioId] [int] NULL,
 CONSTRAINT [PK__User__536C85E5B3CDBFE3] PRIMARY KEY CLUSTERED 
(
    [Id] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
GO

ALTER TABLE [dbo].[User] ADD  DEFAULT (getdate()) FOR [CreatedAt]
GO

ALTER TABLE [dbo].[User] ADD  DEFAULT (suser_sname()) FOR [CreatedBy]
GO

HeidiSQL 10.3.0.5838 рдкреНрд░рд╛рдердорд┐рдХ рдХреБрдВрдЬреА рдХрд╛ рдкрддрд╛ рдирд╣реАрдВ рд▓рдЧрд╛рддрд╛ рд╣реИ:
image

рдпрд╣рд╛рдВ рдПрдХ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╣реИ рдЬреЛ рдПрдордПрд╕ рдПрд╕рдХреНрдпреВрдПрд▓ рдкрд░ рдкреНрд░рд╛рдердорд┐рдХ рдХреБрдВрдЬреА рдЗрдВрдбреЗрдХреНрд╕ рдХрд╛ рдЪрдпрди рдХрд░рддреА рд╣реИ (рд╢рд╛рдпрдж рдПрдордПрд╕ рдПрд╕рдХреНрдпреВрдПрд▓ рдХреЗ рд╢реБрд░реБрдЖрддреА рд╕рдВрд╕реНрдХрд░рдг рдирд╣реАрдВ):

select schema_name(tab.schema_id) as [schema_name], 
    tab.[name] as table_name, 
    pk.[name] as pk_name,
    col.name as col_name
from 
  sys.tables tab
  left outer join sys.indexes pk on tab.object_id = pk.object_id and pk.is_primary_key = 1
  left join sys.index_columns ic on ic.index_id = pk.index_id and ic.object_id = tab.object_id
  inner join sys.columns col on ic.object_id = col.object_id and ic.column_id = col.column_id
order by schema_name(tab.schema_id),
    tab.[name]
рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

rentalhost picture rentalhost  ┬╖  5рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

andreybatalof picture andreybatalof  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

BraveOtter picture BraveOtter  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

cautionbug picture cautionbug  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

slaFFik picture slaFFik  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ