LIMITACOES DO MYSQL

MAXCIM 09/06/2010 11:13:33
#344329
Olá amigos!

utilizo o mysql 5,1 que por sinal é um excelente banco de dados.
porem hoje me deparei com uma limitação que não esperava.
tenho uma tabela com com muitos campos é uma tabela de definiçao de novel de usuario
e não consegui criar mais de 1000 campos o de 999 foi criado.. mas 1000 ele não aceita.

alguem conhece os limites do Mysql
e se tem como configurar pra aumentar o numero maximo de campos por tabela?

desde já agradeço
FOXMAN 09/06/2010 13:32:43
#344371
Resposta escolhida
Maxcim, qdo se trata de nivel de usuário realmente isso é um pé no S....
Não tenho a informação que vc necessita mas vou procurar saber.

Bem, não sei como é o seu sistema nem como é o seu critério.Sei que mudar isso para uma outra lógica não é fácil, porém eu acho que 999 ou 1000 campos poderiam ser divididos em módulos( ou não dá para fazer em módulos ????)

Por exemplo :
tblAcessoCliente : Campos referente a cliente.
tblAcessoFornecedor : campos referente a forncedor.
E assim por diante.
MAXCIM 09/06/2010 13:55:11
#344374
Oi Fox, obrigado pela atenção...
até dá pra dividir em modulos... poerm terei de remodelar toda a estrutura...
a tabela manten todos os dados do usurio em uma unica linha, facilitava a leitura e gravação do perfil.

o carregamento da arvore (treeview) com unico recordset é bem mais simples ( conforme figura anexa) cada NÓ é um campo com seu valor ( 0 ou 1)
se não tiver mesmo como aumentar o limite de camos.. terei mesmo de dividir,,, só não sei como!
RICATOM 09/06/2010 14:07:46
#344377
Com certeza voce deve mudar sua logica, eu mesmo gravo as informações sobre as restrições do sistema em uma tabela com 9 campos e tenho total controle e de forma super flexivel.


RICATOM 09/06/2010 14:31:44
#344380
Controle de acesso
MAXCIM 09/06/2010 14:32:58
#344381
E' caros amigos.. tento que fugir de remodelar todo esse processo... hoje torna-se inviavel refazer todo esse modulo e tbm o projeto onde tudo é interligado.

nesta imagem, tenho a tela com os textos do nivel que peenche a treeviem , e logo abaixo a tela de cadastro de usuarios,
montei de forma que cada coluna representa um nivel..
assim eu testo se rstuser[Ô](us01) = 1 permite se rstuser[Ô](us01) =0 nega. assim tenho rstuser[Ô](us02) rstuser[Ô](us03) rstuser[Ô](us04)... 10.. 20.. 30.. 100.. até 999
hoje tive a infelicidade de passar dos mil...
FOXMAN 09/06/2010 15:00:49
#344383
Amigo,
Vc já pensou se seu cliente solicita novos módulos inexistente no seu sistema ?????
Observo que seu esquema de nivel de usuário já está limitado, ou seja chegará o momento em que não haverá possibilidades de implementar mais segurança ao sistema.



MAXCIM 09/06/2010 15:06:04
#344384
Oi Fox, mas foi justamente ai que deu o problema.. aumentar a segurança , incluir novos niveis...
ao criar as novas chaves e incluir mais colunas cai na limitação da tabela que já tinha 999 campos criados,,, e ei tinha que incluir mais 9 ..
e não foi possivel....

se eu coneguir aumentar o limite de capos por tabela... continuo assim... teria cheves US1000 US1001 US1002 e por ai vai....
RICATOM 09/06/2010 17:17:42
#344406
Voce tem que analisar o [Ô]Custo X Benefício[Ô] da mudança, ja usei o esquema que vc esta usando e qualquer alteração era complicada e olha que nem cheguei perto dos 1000 rsrs.

Hoje com um simples insert incluo qtas restrições precisar.
MAXCIM 09/06/2010 17:35:48
#344412
Não deixa de ter razão! Ricardo!
mas como ficaria o perfil do usurio gravado? ID user | IDperfil |Acesso

se tiver 50 usuarios e 1000 pontos de acesso teriei então 5000 registros na tabela?

no meu modo atual seriam apenas 50 registros ( com um recordset meio longo...) mas apenas 50 registros.... pra fazer a busca e alteração altero um registro só.
estou meio relutante em mudar a tecnologia... se houvesse um jeito ed burlar essa limitação di mysql...
mas estou vendo que o negocio é mudar mesmo....
GERMANO 09/06/2010 20:22:38
#344426
Amigo faço assim:

Campo_Nome Campo_senha Campo_opções

[ô]PEDRO[ô], [ô]1234[ô], [ô]000011010010001001[ô]
[ô]EDUARDO[ô], [ô]5555[ô], [ô]1236587485888859[ô]

Depois Criei uma função que pega a posição do caractere para saber se permite ou não
e outra função que escreva na posição do caractere.

e somente o SQL da para fazer a conversão.

Abraços,
Página 1 de 2 [16 registro(s)]
Tópico encerrado , respostas não são mais permitidas