Naming conventions? We don't need no stinkin' naming conventions (or any convention or even common sense for that matter)!
-
Clearly, I'm going to die working. When I read stuff like this, the inmates are running the asylum.
Charlie Gilley <italic>Stuck in a dysfunctional matrix from which I must escape... "Where liberty dwells, there is my country." B. Franklin, 1783 “They who can give up essential liberty to obtain a little temporary safety deserve neither liberty nor safety.” BF, 1759
It's always been the inmates! :laugh:
Best, Sander Azure DevOps Succinctly (free eBook) Azure Serverless Succinctly (free eBook) Migrating Apps to the Cloud with Azure arrgh.js - Bringing LINQ to JavaScript
-
Ha damn... You still sound like the man of the hour, nay, the man of the year! :D
A new .NET Serializer All in one Menu-Ribbon Bar Taking over the world since 1371!
I am! I solve their problems, better, faster and cheaper than any other supplier they have! :omg:
Best, Sander Azure DevOps Succinctly (free eBook) Azure Serverless Succinctly (free eBook) Migrating Apps to the Cloud with Azure arrgh.js - Bringing LINQ to JavaScript
-
The part before the $ is actually a company name and it turned out this database has the same tables for 23(!) companies, and some other (un?)related tables, giving the database a staggering 41,000+ tables!
Probably not intended, but this sounds like a great way to be GPDR compliant - each table can have different access controls so that someone who is allowed to view the data for $COMPANY_A will never be allowed to view the data for $COMPANY_B. Unintended consequences, and all that...
Yeah, it's probably to keep one company out of the other's data, but giving them separate databases may have been a better option... Also, I'm not sure if GDPR applies to businesses (it's all B2B) ;)
Best, Sander Azure DevOps Succinctly (free eBook) Azure Serverless Succinctly (free eBook) Migrating Apps to the Cloud with Azure arrgh.js - Bringing LINQ to JavaScript
-
Be thankful... it could have been access... or even better, excel tables :laugh: :laugh:
M.D.V. ;) If something has a solution... Why do we have to worry about?. If it has no solution... For what reason do we have to worry about? Help me to understand what I'm saying, and I'll explain it better to you Rating helpful answers is nice, but saying thanks can be even nicer.
Nelek wrote:
or even better, excel tables
That's my next project :omg:
Best, Sander Azure DevOps Succinctly (free eBook) Azure Serverless Succinctly (free eBook) Migrating Apps to the Cloud with Azure arrgh.js - Bringing LINQ to JavaScript
-
Had to write some query on a SQL Server database today. Opening the database took close to a minute. What I saw then will forever haunt me. Table names like [01 Some Company & Partner l.l.c.$Customer Ledger item], but also [01 Some Company & Partner llc$Cust something else], because sometimes you need Customer while other times you simply need Cust. Each table had columns with names like [Entry No_], [Customer report code 1] and [Amount (CNY)] (CNY apparently means "currency", but with column names like that why even bother to abbreviate?) :sigh: So we've got names with spaces, dots, numbers and symbols, complex enough to pass a password complexity validation! Now there's something particularly odd about the table name... The part before the $ is actually a company name and it turned out this database has the same tables for 23(!) companies, and some other (un?)related tables, giving the database a staggering 41,000+ tables! :wtf: So let me say this again so you can be sure you read it right and I spelled it correctly... OVER FORTY-ONE THOUSAND TABLES! :wtf: It was a bit over 1700 tables per company, which I already think is A LOT, combined in a single database. SQL Server allows for int.MaxValue objects in a single database and I have a feeling this application was pushing the limit (if not, not for lack of trying) :laugh: I'm assuming most of it is generated, but even then, WHY WOULD YOU GENERATE SUCH !G($#&#$(!#F:elephant:J!#(P!? :mad: Sometimes you think you've seen it all and then you run into something like this and realize there really is no limit to human stupidity :sigh:
Best, Sander Azure DevOps Succinctly (free eBook) Azure Serverless Succinctly (free eBook) Migrating Apps to the Cloud with Azure arrgh.js - Bringing LINQ to JavaScript
Well, it seemed like a good idea at the time. :)
If you can keep your head while those about you are losing theirs, perhaps you don't understand the situation.
-
Had to write some query on a SQL Server database today. Opening the database took close to a minute. What I saw then will forever haunt me. Table names like [01 Some Company & Partner l.l.c.$Customer Ledger item], but also [01 Some Company & Partner llc$Cust something else], because sometimes you need Customer while other times you simply need Cust. Each table had columns with names like [Entry No_], [Customer report code 1] and [Amount (CNY)] (CNY apparently means "currency", but with column names like that why even bother to abbreviate?) :sigh: So we've got names with spaces, dots, numbers and symbols, complex enough to pass a password complexity validation! Now there's something particularly odd about the table name... The part before the $ is actually a company name and it turned out this database has the same tables for 23(!) companies, and some other (un?)related tables, giving the database a staggering 41,000+ tables! :wtf: So let me say this again so you can be sure you read it right and I spelled it correctly... OVER FORTY-ONE THOUSAND TABLES! :wtf: It was a bit over 1700 tables per company, which I already think is A LOT, combined in a single database. SQL Server allows for int.MaxValue objects in a single database and I have a feeling this application was pushing the limit (if not, not for lack of trying) :laugh: I'm assuming most of it is generated, but even then, WHY WOULD YOU GENERATE SUCH !G($#&#$(!#F:elephant:J!#(P!? :mad: Sometimes you think you've seen it all and then you run into something like this and realize there really is no limit to human stupidity :sigh:
Best, Sander Azure DevOps Succinctly (free eBook) Azure Serverless Succinctly (free eBook) Migrating Apps to the Cloud with Azure arrgh.js - Bringing LINQ to JavaScript
Because the unsupervised junior devs thought multi-tenant tables were too much work for the prototype, and when it needed to scale out management balked at paying for one database/customer or a major refactor of the tables to do multi-tenant the sane way so the juniors -still without any meaningful supervision - came up with a WTF pattern.
Did you ever see history portrayed as an old man with a wise brow and pulseless heart, weighing all things in the balance of reason? Is not rather the genius of history like an eternal, imploring maiden, full of fire, with a burning heart and flaming soul, humanly warm and humanly beautiful? --Zachris Topelius
-
Greg Utas wrote:
Could CNY be Chinese Yuan?
Nope, it's actually short for CurreNcY. Makes perfect sense if you designed that database I guess :~
Best, Sander Azure DevOps Succinctly (free eBook) Azure Serverless Succinctly (free eBook) Migrating Apps to the Cloud with Azure arrgh.js - Bringing LINQ to JavaScript
Death to abbreviations. Just die! Also, fix your elephanting spelling errors.
Charlie Gilley <italic>Stuck in a dysfunctional matrix from which I must escape... "Where liberty dwells, there is my country." B. Franklin, 1783 “They who can give up essential liberty to obtain a little temporary safety deserve neither liberty nor safety.” BF, 1759
-
Had to write some query on a SQL Server database today. Opening the database took close to a minute. What I saw then will forever haunt me. Table names like [01 Some Company & Partner l.l.c.$Customer Ledger item], but also [01 Some Company & Partner llc$Cust something else], because sometimes you need Customer while other times you simply need Cust. Each table had columns with names like [Entry No_], [Customer report code 1] and [Amount (CNY)] (CNY apparently means "currency", but with column names like that why even bother to abbreviate?) :sigh: So we've got names with spaces, dots, numbers and symbols, complex enough to pass a password complexity validation! Now there's something particularly odd about the table name... The part before the $ is actually a company name and it turned out this database has the same tables for 23(!) companies, and some other (un?)related tables, giving the database a staggering 41,000+ tables! :wtf: So let me say this again so you can be sure you read it right and I spelled it correctly... OVER FORTY-ONE THOUSAND TABLES! :wtf: It was a bit over 1700 tables per company, which I already think is A LOT, combined in a single database. SQL Server allows for int.MaxValue objects in a single database and I have a feeling this application was pushing the limit (if not, not for lack of trying) :laugh: I'm assuming most of it is generated, but even then, WHY WOULD YOU GENERATE SUCH !G($#&#$(!#F:elephant:J!#(P!? :mad: Sometimes you think you've seen it all and then you run into something like this and realize there really is no limit to human stupidity :sigh:
Best, Sander Azure DevOps Succinctly (free eBook) Azure Serverless Succinctly (free eBook) Migrating Apps to the Cloud with Azure arrgh.js - Bringing LINQ to JavaScript
Sander Rossel wrote:
a staggering 41,000+ tables
Why go deep, when you can go wide? If each company has its own set of tables dedicated to it, think of how much faster queries are gonna run than if all the data for all companies was combined... I'm sure that was the line of reasoning...
-
Had to write some query on a SQL Server database today. Opening the database took close to a minute. What I saw then will forever haunt me. Table names like [01 Some Company & Partner l.l.c.$Customer Ledger item], but also [01 Some Company & Partner llc$Cust something else], because sometimes you need Customer while other times you simply need Cust. Each table had columns with names like [Entry No_], [Customer report code 1] and [Amount (CNY)] (CNY apparently means "currency", but with column names like that why even bother to abbreviate?) :sigh: So we've got names with spaces, dots, numbers and symbols, complex enough to pass a password complexity validation! Now there's something particularly odd about the table name... The part before the $ is actually a company name and it turned out this database has the same tables for 23(!) companies, and some other (un?)related tables, giving the database a staggering 41,000+ tables! :wtf: So let me say this again so you can be sure you read it right and I spelled it correctly... OVER FORTY-ONE THOUSAND TABLES! :wtf: It was a bit over 1700 tables per company, which I already think is A LOT, combined in a single database. SQL Server allows for int.MaxValue objects in a single database and I have a feeling this application was pushing the limit (if not, not for lack of trying) :laugh: I'm assuming most of it is generated, but even then, WHY WOULD YOU GENERATE SUCH !G($#&#$(!#F:elephant:J!#(P!? :mad: Sometimes you think you've seen it all and then you run into something like this and realize there really is no limit to human stupidity :sigh:
Best, Sander Azure DevOps Succinctly (free eBook) Azure Serverless Succinctly (free eBook) Migrating Apps to the Cloud with Azure arrgh.js - Bringing LINQ to JavaScript
Though attributed to Albert Einstein, there is no evidence that he actually said the following... The difference between genius and stupidity is that genius has its limits... :laugh:
Steve Naidamast Sr. Software Engineer Black Falcon Software, Inc. blackfalconsoftware@outlook.com
-
Clearly, I'm going to die working. When I read stuff like this, the inmates are running the asylum.
Charlie Gilley <italic>Stuck in a dysfunctional matrix from which I must escape... "Where liberty dwells, there is my country." B. Franklin, 1783 “They who can give up essential liberty to obtain a little temporary safety deserve neither liberty nor safety.” BF, 1759
I have that book the inmates are running the asylum it's an interesting read, especially 22 years after it was written. things haven't changed much.