análise ABP estrutura de tabela padrão

Descrição: Esta versão da estrutura de tabela com base no número da versão --v5.4 tag no github. O conteúdo a seguir é baixado através do site oficial e projeto relacionado para restaurar uma artigos de referência da rede, bem como alguns dos seu próprio entendimento. Se local indevido, bem-vindo para me corrigir.

 

Especifique a tabela

 

Nome da tabela: AbpAuditLogs

armazenar informações sobre o log de auditoria: papel

Fonte localizado Abp.Zero.Common - Aplicação - da Auditoria, o nome da classe: AuditLog: Entidade <longo>, IMayHaveTenant.

serviços de acesso registro em tempo real, métodos e assim por diante, combinada com função de registro para facilitar os problemas de produção ambiente de rastreamento.

 

 

Nome da tabela: AbpBackgroundJobs

Papel: Record para o trabalho persistente informações trabalho em segundo plano

Fonte localizado Abp - BackgroundJobs, o nome da classe: BackgroundJobInfo: CreationAuditedEntity <longo>.

Quando se utiliza a tarefa de temporização (por exemplo Quartz.net), o trabalho pode ser colocado nesta tabela. Extensível de mesa de acordo com o campo específico da estrutura. Em que uma prioridade, definindo enumeração implementado. Tal como mostrado abaixo:

 

 

Nome da tabela: AbpEditions

Papel: informações sobre a versão aplicações de gravação

Fonte localizado Abp.Zero.Common - Aplicação - sob Editions, nomes de classe: Edição: FullAuditedEntity.

Definido apenas nome de classe única e nome da versão da versão do visor, para remover o GUID é um nome exclusivo por padrão '-' valor (nível de código, não-banco de dados). Outros campos tomadas pela implementação do modo de interface. Depois de criar tem uma dados semente. O nome de exibição padrão e um nome exclusivo é padrão .

 

 

Nome da tabela: AbpEntityChanges

Função: Alterar informação relacionada entidade a gravação

Fonte localizado Abp - EntityHistory, o nome da classe: EntityChange: Entidade <longo>, IMayHaveTenant.

tabelas suplementares final (com referência à extremidade do artigo [1] não há tabela). E o relacionamento muitos-para-AbpEntityChangeSets e AbpEntityPropertyChanges são muitos relação. Temporariamente não é claro para o desígnio de propósito.

 

 

Nome da tabela: AbpEntityChangeSets

Papel: a gravação de um conjunto de informações sobre uma mudança de entidade

Fonte localizado Abp - EntityHistory, o nome da classe: EntityChangeSet: Entidade <longo>, IHasCreationTime, IMayHaveTenant, IExtendableObject.

tabelas suplementares final (com referência à extremidade do artigo [1] não há tabela). relação ibid. Temporariamente não é claro para o desígnio de propósito.

 

 

Nome da tabela: AbpEntityPropertyChanges

Papel: Informação do registo de entidade relacionada alterações de propriedade

Fonte localizado Abp - EntityHistory, o nome da classe: EntityPropertyChange: Entidade <longo>, IMayHaveTenant.

tabelas suplementares final (com referência à extremidade do artigo [1] não há tabela). relação ibid. Temporariamente não é claro para o desígnio de propósito.

 

 

Nome da tabela: AbpFeatures

Ação: gravar informações básicas (versão) do conjunto de recursos

Fonte localizado Abp.Zero.Common - Aplicação - em Recursos, nome da classe: FeatureSetting: CreationAuditedEntity <longo>, IMayHaveTenant.

Define apenas o nome e características da classe valor recurso, os outros campos (exceto EditionID e discriminador) obtido por meio de implementação da interface. EditionID chave estrangeira é adicionado no EditionFeatureSetting subclasse; discriminador adicionado ao gerar o mapeamento (construtor de classe FeatureSettingMap), utilizado para identificar subclasses? (Definição do FluentNHibernate.Mapping classe de mapeamento). Para pequenos sistemas, o sentimento nunca vai usar essa tabela.

 

 

Nome da tabela: AbpLanguages

Papel: aplicações de gravação idioma

Fonte localizado Abp.Zero.Common - a localização, nome da classe: ApplicationLanguage: FullAuditedEntity, IMayHaveTenant.

Tal é seriável. Não inicializar as informações de idioma relacionadas à definição de dados semente. Definido aqui apenas mostrar informações básicas sobre a língua da língua, não as configurações do sistema.

 

 

Tabela名: AbpLanguageTexts

Função: armazenamento de informações para o texto de localizações

Fonte localizado Abp.Zero.Common - Localização, o nome da classe: ApplicationLanguageText: AuditedEntity <longo>, IMayHaveTenant.

Tal é seriável. Por tratamento localizado principalmente na forma de arquivo XML definido é concluída, mas ele também pode guardar os dados nesta tabela é concluída.

 

 

Nome da tabela: AbpNotifications

Ação: meios para armazenar pedido de notificação, esta notificação é enviada ao inquilino / user

Fonte localizado Abp - Notificações sob o nome da classe: NotificationInfo: CreationAuditedEntity <Guid>.

Tal é seriável. E a mesa assinatura de notificação próxima é um pouco semelhante, mas a mesa principal registra informações de notificação. Informar a classe várias tabelas devem ser preparadas para o SignalR. Em que a gravidade da notificação, ou por enumerando a prioridade é definida, como mostrado abaixo:

 

 

Tabela名: AbpNotificationSubscriptions

Função: para inscrições de notificação de armazenamento de informações

Fonte localizado ABP - Notificações sob o nome da classe: NotificationSubscriptionInfo: CreationAuditedEntity <Guid>, IMayHaveTenant.

E, acima de formulário de notificação semelhante, mas esta tabela é principalmente para informar os registros inquilino, assinaturas de usuários.

 

 

Tabela名: AbpOrganizationUnitRoles

Papel: gravar as informações do usuário na unidade de organização da sociedade

Fonte localizado Abp.Zero.Common - sob Organizations, nome da classe: OrganizationUnitRole: CreationAuditedEntity <longo>, IMayHaveTenant, ISoftDelete.

E a seguinte relação é a tabela many-to-AbpOrganizationUnits. quadros suplementares final (com referência ao final deste artigo não existe uma tabela). E o papel da AbpUserOrganizationUnits tabela semelhante, que esse papel pertence à unidade de organização especificado, mas não sei por que não chamar AbpRoleOrganizationUnits. (Oh)

 

 

Tabela名: AbpOrganizationUnits

Ação: a gravação de uma unidade organizacional (OU) informações sobre

Fonte localizado Abp.Zero.Common - sob Organizations, nome da classe: OrganizationUnit: FullAuditedEntity <longo>, IMayHaveTenant.

E AbpOrganizationUnitRoles, mesa AbpUserOrganizationUnits é uma relação para-muitos. Apenas as informações básicas sobre sua organização, nenhuma lógica de negócios.

 

 

Nome da tabela: AbpPermissions

Informação relacionada é gravado para a concessão / negar papel ou usuário dos direitos: o papel da

Fonte localizado Abp.Zero.Common - a autorização, o nome da classe: PermissionSetting: CreationAuditedEntity <longo>, IMayHaveTenant.

Registos relacionados com permissões de usuário, funções e Grant inquilino / Negar informações, mas os três campos pode estar vazio. padrão autorizado é verdade (o código). Abp determinado quadro salvo permissões padrão (adicionar e editar) método, verifique as permissões forma genérica de características de uso. Após a sua criação há uma dados semente padrão.

 

 

Nome da tabela: AbpRoleClaims

Papel: Registre as informações sobre o papel de reivindicação

Fonte localizado Abp.Zero.Common - Autorização - em Funções, nome da classe: RoleClaim: CreationAuditedEntity <longo>, IMayHaveTenant.

quadros suplementares final (com referência ao final do artigo [1] não existe uma tabela), eu não sei por que no específico. Em geral, própria identidade da Microsoft, há os (créditos) objetos semelhantes, mas no papel, eu não sei como usar.

 

 

Nome da tabela: AbpRoles

Papel: O papel básico de gravação de informações

Fonte localizado Abp.Zero.Common - Autorização - em Funções, nome da classe: AbpRoleBase: FullAuditedEntity <int>, IMayHaveTenant.

Quando você cria uma tabela de inserção dois dados de sementes, e uma associação de inquilinos, nenhum papel padrão, e não a outra associação inquilinos, mas é o papel padrão. Se o rótulo é o papel padrão é automaticamente atribuído ao novo usuário. Bool padrão tipo de campo é falso.

 

 

Nome da tabela: AbpSettings

Papel: Registre as informações sobre os inquilinos ou conjunto de usuários

Fonte localizado Abp.Zero.Common - Configuração, o nome da classe: Ambiente: AuditedEntity <longo>, IMayHaveTenant.

Existem dados de sementes padrão. O padrão é para adicionar o endereço de e-mail e nome de exibição do destinatário, há uma --en idioma padrão. Parece definido em usuários e inquilinos, exceto para alguns podem estar em um arquivo de configuração, alguns dos últimos sobre a mesa, sentindo-se nesta tabela e os AbpLanguageTexts mesa papel um tanto similar.

 

 

Nome da tabela: AbpTenantNotifications

Função: Registrar informações distribuídas para notificar os inquilinos de

Fonte localizado ABP - Notificações sob o nome da classe: TenantNotificationInfo: CreationAuditedEntity <Guid>, IMayHaveTenant.

Forma de notificação e semelhante mencionada acima, trata-se de mesa inquilinos. Eu não sei o que o desígnio de propósito desta tabela, você pode sentir com mesa AbpNotifications, basta remover o campo relacionadas ao usuário desta tabela.

 

 

Nome da tabela: AbpTenants

Papel: informações inquilino básico Gravar

Fonte localizado Abp.Zero.Common - sob multitenancy, nome da classe: AbpTenantBase: FullAuditedEntity <int>, IPassivable.

Antes de gerar acrescentou mesa AbpEditions Id como uma chave estrangeira, dados padrão para gerar uma semente, os inquilinos chamado Padrão. suporte multi-tenant (isolando automaticamente os dados de cada inquilino, os desenvolvedores do módulo de negócios não precisa escrever número de código correspondente quando você salvar e consulta).

 

 

Nome da tabela: AbpUserAccounts

Papel: Registra as informações resumidas sobre os usuários

Fonte localizado Abp.Zero.Common - Autorização - em Usuários, nome da classe: UserAccount: FullAuditedEntity <longo>.

Por padrão, existem dois dados de sementes. Eu não sei o que esta tabela como um sim.

 

 

Nome da tabela: AbpUserClaims

Papel: Registre as informações sobre reivindicação do usuário

Fonte localizado Abp.Zero.Common - Autorização - em Usuários, nome da classe: UserClaim: CreationAuditedEntity <longo>, IMayHaveTenant.

Deve estar usando própria autoridade de certificação da Microsoft, declarações gravadas informações relacionadas. Que é semelhante à tabela de destino é semelhante ao papel.

 

 

Nome da tabela: AbpUserLoginAttempts

Papel: Informação para salvar tentativas de login do usuário

Fonte localizado Abp.Zero.Common - Autorização - em Usuários, nome da classe: UserLoginAttempt: Entidade <longo>, IHasCreationTime, IMayHaveTenant.

Por nome de usuário, informações senha do usuário, e gravar os resultados de informações de login (independentemente do sucesso ou fracasso).

 

 

Nome da tabela: AbpUserLogins

Papel: informações sobre o usuário para armazenar log serviço de login externo

Fonte localizado Abp.Zero.Common - Autorização - em Usuários, nome da classe: UserLogin: Entidade <longo>, IMayHaveTenant.

O padrão é sem dados, de terceiros gravação informações palpite é registrado.

 

 

Nome da tabela: AbpUserNotifications

armazenar informações sobre a notificação do usuário: papel

Fonte localizado Abp - Notificações sob o nome da classe: UserNotificationInfo: Entidade <Guid>, IHasCreationTime, IMayHaveTenant

O padrão há dados. Foco no registro da notificação do usuário, que contém o campo id aviso inquilino, embora a fonte não identificar a tabela AbpTenantNotifications a chave estrangeira, mas acho que deve ser em. Outra notificação, estado definido pela enumeração, o registro principal se o utilizador leu a notificação dois estados. Tal como mostrado abaixo:

 

 

Tabela名: AbpUserOrganizationUnits

Função: Registrar informações sobre a associação de um usuário da unidade organizacional (OU) do

Fonte localizado Abp.Zero.Common - Autorização - em Usuários, nome da classe: UserOrganizationUnit: CreationAuditedEntity <longo>, IMayHaveTenant, ISoftDelete.

AbpOrganizationUnits e relacionamento muitos-para-mesa. Ou seja, se o usuário pertence à unidade organizacional especificada, ou em qual departamento (coloquialmente).

 

 

Nome da tabela: AbpUserRoles

Papel: Registre as informações sobre a relação entre usuários e funções

Fonte localizado Abp.Zero.Common - Autorização - em Usuários, nome da classe: UserRole: CreationAuditedEntity <longo>, IMayHaveTenant.

 

 

Nome da tabela: AbpUsers

informações básicas do usuário Record: papel

Fonte localizado Abp.Zero.Common - Autorização - em Usuários, nome da classe: AbpUserBase: FullAuditedEntity <longo>, IMayHaveTenant, IPassivable.

O usuário padrão é admin, como dados de semente é adicionado. campo eliminados LastLoginTime (referência [1])? A informação principal é usuário conectado, não muito envolvido no caso dos usuários de negócios. Que descreve uma pluralidade de tabelas é uma chave estrangeira.

 

 

Nome da tabela: AbpUserTokens

Papel: registrar informações token de autenticação do usuário

Fonte localizado Abp.ZeroCore - Autorização - em Usuários, nome da classe: UserToken: Entidade <longo>, IMayHaveTenant.

tabelas suplementares final (com referência à extremidade do artigo [1] não há tabela). Api deve usar principalmente para gravar um sinal de mensagens relacionadas.

 

 

Nome da tabela: AbpWebhookEvents

Função: Registro criado loja virtual ligada a informações relacionadas

Fonte localizado ABP - Webhooks, o nome da classe: WebhookEvent: Entidade <Guid>, IMayHaveTenant, IHasCreationTime, IHasDeletionTime.

tabelas suplementares final (com referência à extremidade do artigo [1] não há tabela). Não sei especificamente o papel Sim.

 

 

Nome da tabela: AbpWebhookSendAttempts

Papel: webhook Relacionados ao Trabalho registros de itens de informações armazenadas

Fonte localizado ABP - Webhooks, o nome da classe: WebhookSendAttempt: Entidade <Guid>, IMayHaveTenant, IHasCreationTime, IHasModificationTime.

tabelas suplementares final (com referência à extremidade do artigo [1] não há tabela). Não sei especificamente o papel Sim. Lá na associação AbpWebhookEvents tabela de bem-definido, mas há AbpWebhookSubscriptions mesa, WebhookSubscriptionId palpite é uma chave estrangeira.

 

 

Nome da tabela: AbpWebhookSubscriptions

Papel: informações de assinatura webhook Registro

Fonte localizado ABP - Webhooks, o nome da classe: WebhookSubscriptionInfo: CreationAuditedEntity <Guid>, IPassivable.

tabelas suplementares final (com referência à extremidade do artigo [1] não há tabela). Não sei especificamente o papel Sim.

 

 

Notas chaves estrangeiras

A maioria das mesas têm um inquilino id, identificação de usuário (outra menor parece não um por um exemplo), além de alguma classe mostra claramente a mesa é uma chave estrangeira que corresponde, outros são não explicitamente declarado . Se o ID de inquilino, são adquiridos através da interface. Há claro para dizer, eu estou acima de tudo claramente marcado fora. Para não especificado explicitamente, os tatos individuais eles podem lidar como uma chave estrangeira. Mas não pode ser no banco de dados, ou o código é a associação relacionado.

 

Uma descrição breve de tempo definidos

Datetime campo correspondente para o tipo de formato de tempo é aaaa-MM-dd HH: MM: ss.fff, 3 ° f, com uma precisão de 1 milissegundo (ms), Exemplo 2014-12-0317: 06: 15.433.

DateTime2 campo correspondente para o tipo de formato de tempo é aaaa-MM-dd HH: MM: ss.fffffff, 7 th f, com uma precisão de 0.1 microssegundos (pS), Exemplo 2014-12-0317: 23: 19,2880929.

Se você estiver usando funções de data SQL atribuído, DateTime tipo de campo usar GETDATE (), DateTime2 tipo de campo para uso SYSDATETIME ().

 

referência

【1】http://www.mamicode.com/info-detail-2018026.html

【2】https://www.cnblogs.com/dudu/p/sql-server-datetime-vs-datetime2.html

Publicado 71 artigos originais · Louvor obteve 152 · vista 520 000 +

Acho que você gosta

Origin blog.csdn.net/mzl87/article/details/105256180
Recomendado
Clasificación