Postmortem. Patricia Cornwell

“Maybe that’s what happened,” I thought out loud. “And with the DBA, someone not only could view but actually alter the data.”

“Sure! He could do anything because God’s told him he can. The DBA is Jesus.”

Her theological allusions were so outrageous I laughed in spite of myself.

“That’s how I got into SQL to begin with,” she confessed. “Since you didn’t tell me any passwords or anything. I wanted to get into SQL so I could try out some of the commands in the book. I just gave your DBA user name a password I made up so I could get in.”

“Wait a minute,” I slowed her down. “Wait a minute! What do you mean you assigned a password you made up to my DBA user name? How did you know what my user name is? I didn’t tell you.”

She explained, “It’s in your grants file. I found it in the Home directory where you have all the INP’s for the tables you created. You have a file called ‘Grants. SQL’ where you created all the public synonyms for your tables.”

Actually, I hadn’t created those tables. Margaret did last year and I loaded my home computer with the boxes of backup diskettes she gave me. Was it possible there was a similar “Grants” file in the OCME computer? I took hold of Lucy’s hand and we got up from the couch. Eagerly, she followed me into my office. I sat her down in front of the computer and pulled up the ottoman.

We got into the communications software package and typed in the number for Margaret’s office downtown. We watched the countdown at the bottom of the screen as the computer dialed. Almost immediately it announced we were connected, and several commands later the screen was dark and flashing with a green C prompt. My computer suddenly was a looking glass. On the other side were the secrets of my office ten miles from here.

It made me slightly uneasy to know that even as we worked the call was being traced. I’d have to remember to tell Wesley so he didn’t waste his time figuring out that the perpetrator, in this instance, was me.

“Do a find file,” I said, “for anything that might be called ‘Grants.’

Lucy did. The C prompt came back with the message “No files found.”

We tried again. We tried looking for a file called “Synonyms” and still had no luck. Then she got the idea of trying to find any file with the extension “SQL” because ordinarily that was the extension for any file containing SQL commands, commands such as the ones used to create public synonyms on the office data tables. Scores of file names rolled up the screen. One caught our attention. It was called “Public. SQL.”

Lucy opened the file and we watched it roll past. My excitement was equaled by my dismay. It contained the commands Margaret wrote and executed long ago when she created public synonyms for all of the tables she created in the office data base commands like CREATE PUBLIC SYNONYM CASE FOR DEEP.CASE.

I was not a computer programmer. I’d heard of public synonyms but was not entirely sure what they were.

Lucy was flipping through a manual. She got to the section on public synonyms and confidently volunteered, “See, it’s neat. When you create a table, you have to create it under a user name and password.”

She looked up at me, her eyes bright behind her thick glasses.

“Okay,” I said. “That makes sense.”

“So if your user name is ‘Auntie’ and your password is ‘Kay,’ then when you create a table called ‘Games’ or something, the name the computer gives it is really ‘Auntie.Games.’

It attaches the table name to the user name it was created under. If you don’t want to bother typing in ‘Auntie.Games’ every time you want to get into the table, you create a public synonym. You type the command CREATE PUBLIC SYNONYM GAMES FOR AUNTIE.GAMES. It sort of renames the table so it’s just called ‘Games.'”

I stared at the long list of commands on the screen, a list revealing every table in the OCME computer, a list revealing the DBA user name each table was created under.

Pages: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136

Leave a Reply 0

Your email address will not be published. Required fields are marked *